一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Javascript學(xué)習(xí)筆記2 函數(shù)

就像我們可以寫成這樣的形式一樣:
復(fù)制代碼 代碼如下:
function Hello() {
alert("Hello");
}
Hello();
var Hello = function () {
alert("Hello");
}
Hello();

其實都是一樣的。
但是當(dāng)我們對其中的函數(shù)進(jìn)行修改時,會發(fā)現(xiàn)很奇怪的問題。
復(fù)制代碼 代碼如下:
<script type="text/Javascript">
function Hello() {
alert("Hello");
}
Hello();
function Hello() {
alert("Hello World");
}
Hello();
</script>

我們會看到這樣的結(jié)果:連續(xù)輸出了兩次Hello World。而非我們想象中的Hello和Hello World。
這是因為Javascript并非完全的按順序解釋執(zhí)行,而是在解釋之前會對Javascript進(jìn)行一次“預(yù)編譯”,在預(yù)編譯的過程中,會把定義式的函數(shù)優(yōu)先執(zhí)行,也會把所有var變量創(chuàng)建,默認(rèn)值為undefined,以提高程序的執(zhí)行效率。也就是說上面的一段代碼其實被JS引擎預(yù)編譯為這樣的形式:
復(fù)制代碼 代碼如下:
<script type="text/Javascript">
var Hello = function() {
alert("Hello");
}
Hello = function() {
alert("Hello World");
}
Hello();
Hello();
</script>

我們可以通過上面的代碼很清晰地看到,其實函數(shù)也是數(shù)據(jù),也是變量,我們也可以對“函數(shù)“進(jìn)行賦值(重賦值)。當(dāng)然,我們?yōu)榱朔乐惯@樣的情況,也可以這樣:
復(fù)制代碼 代碼如下:
<script type="text/Javascript">
function Hello() {
alert("Hello");
}
Hello();
</script>
<script type="text/Javascript">
function Hello() {
alert("Hello World");
}
Hello();
</script>

這樣,程序被分成了兩段,JS引擎也就不會把他們放到一起了。

JavaScript技術(shù)Javascript學(xué)習(xí)筆記2 函數(shù),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 九一精品国产 | 国产福利91 | 国产在视频线精品视频2021 | 国产精视频 | 久久婷婷色一区二区三区 | 国产第一页在线视频 | 婷婷六月天在线 | 小说区图片区综合视频区 | 欧美另类videosbest视频 | 极品美女一级毛片 | 欧美精品国产制服第一页 | 欧美色黄视频 | 上色天天综合网 | 国产一二区视频 | 欧美久久精品一级c片片 | 在线视频精品免费 | 精品日韩在线 | 伊人成人在线观看 | 午夜视频在线播放 | 久久66热re国产毛片基地 | 激情五月综合婷婷 | 久久久久精彩视频 | 中文字幕精品视频 | 日韩一区二区三区免费视频 | 中文字幕第一页亚洲 | 久久免费视屏 | 91精品国产99久久 | 手机在线观看亚洲国产精品 | 精品视频专区 | 国产99精品视频 | 91精品国产91热久久久久福利 | 四虎永久在线观看免费网站网址 | 国产精品久久久尹人香蕉 | 色涩网站在线观看 | 国色天香精品亚洲精品 | 国产拍在线 | 99精品99| 亚洲精品第1页 | 久久国产乱子伦精品免费午夜 | baoyu168成人免费视频 | 亚洲第一免费网站 |