变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

當(dāng)前位置: 首頁(yè)IT技術(shù) → JS變量為什么使用前面要申明

JS變量為什么使用前面要申明

更多

只要是寫(xiě)過(guò)點(diǎn)JS代碼,很簡(jiǎn)單一個(gè)var 就完事了。那對(duì)于JS編譯器背后它又發(fā)生了什么呢?那就一步步通過(guò)代碼來(lái)講起。

View Code?

x = 1;

alert(x);

var y = function() {

alert(x);

var x = 2;

alert(x);

}

y();

上面的代碼也會(huì)你答對(duì)了它會(huì)分別輸出:1,undefined,2。對(duì)于我來(lái)說(shuō),第一反應(yīng)它會(huì)輸出:1,1,2。為什么第二個(gè)會(huì)輸出undefined?在上面我明確定義了一個(gè)全局變量x,為何找不到?

那是因?yàn)椋簀s編譯器在執(zhí)行這個(gè)y函數(shù)的時(shí)候,會(huì)把把它body里面的聲明變量提前到最前面進(jìn)行聲明。比如:var x=2; 編譯器先會(huì)在body最前面進(jìn)行var x 聲明。其實(shí)上面的代碼等同于下面的這段代碼:

?

x = 1;

alert(x);

var y = function() {
var x;//此時(shí)x還未賦值,所以為undefined。

alert(x);

x = 2;

alert(x);

}

y();

所以也就不難理解x=undefined的了.但是如果把var x = 2;這段代碼給刪掉,在內(nèi)部它沒(méi)有進(jìn)行var聲明。它會(huì)一直沿著作用域向上找,此時(shí)的x 就為全局x.

接下來(lái)再看一個(gè)更有趣的例子。

?

var a = 1;

function b() {

a = 10;

?

return;

?

}

b();

alert(a);

///////////////////////////////////

?

var a = 1;

function b() {

a = 10;

?

return;

?

function a() {}

?

} b(); alert(a);

例子很簡(jiǎn)單。第一個(gè)例子為輸出10,第二個(gè)會(huì)輸出1。這是為什么呢?況且第二個(gè)例子我都return 了。按理都應(yīng)當(dāng)輸出10才對(duì)呀!那時(shí)因?yàn)镴S編譯器在背后作怪。

兩段代碼差別就是第二個(gè)例子多了個(gè)function a(){};便這個(gè)函數(shù)體里面什么也沒(méi)有,并且也沒(méi)有對(duì)它進(jìn)行任何調(diào)用。

其實(shí)JS編譯器在背后會(huì)把function a() {}編譯成 var a=function (){}。此時(shí)對(duì)于函數(shù)內(nèi)部也有一個(gè)a=10; 外面的a些也還是1;根據(jù)JS作用域。會(huì)先找內(nèi)部的a,如果找不到再向上一級(jí)一級(jí)找。

最張alert(a) 就會(huì)顯示1;

熱門(mén)評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱(chēng):
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)
主站蜘蛛池模板: 国产黄色小视频网站 | 动漫美女无遮挡 | 黄色片在线观看视频 | 国产一区二区自拍视频 | 日韩性网站 | www.99精品视频在线播放 | 日本中文字幕二区三区 | 亚洲第四页 | 成人在线天堂 | 日本一区二区视频在线观看 | 国产日产 | 91av成年影院在线播放 | 色综合网站国产麻豆 | 黄色免费在线观看视频 | 国产日韩亚洲欧美 | 久久久久免费精品国产 | 一级特黄特黄xxx视频 | 亚洲理论a中文字幕在线 | 国产伦码精品一区二区 | 97国产精品国产品国语字幕 | 国产91色在线 | 亚洲 | 99精品高清视频一区二区 | 日本午夜在线 | 在线观看中文字幕一区 | 日韩黄在线观看免费视频 | 久99久精品视频免费观看v | 日本在线视频一区二区 | 色婷婷成人 | 国产亚洲欧美日韩在线一区 | 男人和女人日皮视频 | 丁香婷婷激情网 | 特级全黄一级毛片视频 | 久草视频资源站 | 伊人久久大香线蕉综合热线 | 日韩精品一区二区三区中文版 | 精品欧美在线观看视频 | 久久曹| 中文字幕二区三区 | 黄免费在线观看 | 免费看三级全黄 | 黄网站在线免费 |