久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

JavaScript作用域分為哪兩類

JavaScript作用域分為全局作用域和局部作用域兩類。變量在函數(shù)外定義為全局變量,全局變量有全局作用域,即網(wǎng)頁(yè)中的所有腳本和函數(shù)均可使用;變量在函數(shù)內(nèi)部聲明為局部作用域,局部作用域一般只在固定的代碼片段(例函數(shù))內(nèi)部可訪問(wèn)到。

JavaScript作用域分為哪兩類

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

變量的作用域(scope),指的是變量在腳本代碼中的可讀、寫的有效范圍,也就是腳本代碼中可以使用這個(gè)變量的區(qū)域。

變量的作用域主要分為全局作用域、局部作用域(也稱函數(shù)作用域)兩種。

相應(yīng)作用域的變量分別稱為全局變量、局部變量。全局變量聲明在所有函數(shù)之外;局部變量是在函數(shù)體內(nèi)聲明的變量或者是函數(shù)的命名參數(shù)。

全局作用域(Global Scope)

變量在函數(shù)外定義為全局變量,全局變量有全局作用域:網(wǎng)頁(yè)中的所有腳本和函數(shù)均可使用。

在代碼中任何地方都能訪問(wèn)到的對(duì)象擁有全局作用域,一般來(lái)說(shuō)以下幾種情形擁有全局作用域:

 1、最外層函數(shù)和在最外層函數(shù)外面定義的變量擁有全局作用域

 2、所有末定義直接賦值的變量自動(dòng)聲明為擁有全局作用域

 3、所有window對(duì)象的屬性擁有全局作用域

一般情況下,window對(duì)象的內(nèi)置屬性都擁有全局作用域,例如window.name、window.location、window.top等等。

局部作用域(Local Scope)

變量在函數(shù)內(nèi)部聲明為局部作用域。

和全局作用域相反,局部作用域一般只在固定的代碼片段(例:函數(shù))內(nèi)部可訪問(wèn)到,最常見(jiàn)的例如函數(shù)內(nèi)部,所有在一些地方也會(huì)看到有人把這種作用域稱為函數(shù)作用域。

總之呢,當(dāng)JS解析器執(zhí)行時(shí),首先就會(huì)在執(zhí)行環(huán)境里構(gòu)建一個(gè)全局對(duì)象,我們定義的全局屬性就是做為該對(duì)象的屬性讀取,在頂層代碼中我們使用this關(guān)鍵字和window對(duì)象都可以訪問(wèn)到它。

而函數(shù)體中的局部變量只在函數(shù)執(zhí)行時(shí)生成的調(diào)用對(duì)象中存在,函數(shù)執(zhí)行完畢時(shí)局部變量即刻銷毀。

因此在程序設(shè)計(jì)中我們需要考慮如何合理聲明變量,這樣既減小了不必要的內(nèi)存開銷,同時(shí)能很大程度地避免變量重復(fù)定義而覆蓋先前定義的變量所造成的Debug麻煩。

說(shuō)明:

變量的作用域跟聲明方式有很密切的關(guān)系。使用 var 聲明的變量的作用域有全局作用域和函數(shù)作用域;使用 let 和 const 聲明的變量有全局作用域、局部作用域。

注意:嚴(yán)格意義的全局變量都屬于 window 對(duì)象的屬性,但 let 和 const 聲明的變量并不屬于 window 對(duì)象,所以它們并不是嚴(yán)格意義上的全局變量,在此僅僅從它們的作用域這個(gè)角度來(lái)說(shuō)它們是全局變量的。

由于 var 支持變量提升,所以 var 變量的全局作用域是對(duì)整個(gè)頁(yè)面的腳本代碼有效;而 let 和 const 不支持變量提升,所以 let 和 const 變量的全局作用域指的是從聲明語(yǔ)句開始到整個(gè)頁(yè)面的腳本代碼結(jié)束之間的整個(gè)區(qū)域,而聲明語(yǔ)句之前的區(qū)域是沒(méi)有效的。

同樣,因?yàn)?var 支持變量提升,而 let 和 const 不支持變量提升,所以使用 var 聲明的局部變量在整個(gè)函數(shù)中有效,而使用 let 和 const 聲明的局部變量從聲明語(yǔ)句開始到函數(shù)結(jié)束之間的區(qū)域有效。需要注意的是,如果局部變量和全局變量同名,則在函數(shù)作用域中,局部變量會(huì)履蓋全局變量,即在函數(shù)體中起作用的是局部變量;在函數(shù)體外,全局變量起作用,局部變量無(wú)效,此時(shí)引用局部變量將出現(xiàn)語(yǔ)法錯(cuò)誤。

示例:變量的作用域

     var v1 = "JavaScript"; //全局變量      let v2 = "JScript"; //全局變量      let v3 = "Script"; //全局變量      scopeTest();    //調(diào)用函數(shù)      function scopeTest(){          var lv = "aaa"; //局部變量          var v1 = "bbb"; //局部變量          let v2 = "ccc"; //局部變量           console.log("函數(shù)體內(nèi)輸出的lv = " + lv); //aaa          console.log("函數(shù)體內(nèi)輸出的v1 = " + v1); //bbb          console.log("函數(shù)體內(nèi)輸出的v2 = " + v2); //ccc          console.log("函數(shù)體內(nèi)輸出的v3 = " + v3); //Script          //v4為全局變量,賦值在后面,因而值為undefined          console.log("函數(shù)體內(nèi)輸出的v4 = " + v4);      }      var v4 = "VBScript"; //全局變量      console.log("函數(shù)體外輸出的lv = " + lv); //① 報(bào)ReferenceError錯(cuò)誤      console.log("函數(shù)體外輸出的v1 = " + v1); //JavaScript      console.log("函數(shù)體外輸出的v2 = " + v2); //JScript      console.log("函數(shù)體外輸出的v3 = " + v3); //Script      console.log("函數(shù)體外輸出的v3 = " + v4); //VBScript

上述腳本代碼分別聲明了 4 個(gè)全局變量、3 個(gè)局部變量。在 scopeTest 函數(shù)體外,變量 v1、v2、v3 和 v4 為全局變量;在 scopeTest 函數(shù)體內(nèi),lv、v2是全局變量。

我們看到,局部變量 v1 和 v2 與全局變量 v1 和 v2 同名,在 scopeTest 函數(shù)體內(nèi),局部變量 v1 和 v2 有效,因而在函數(shù)體這 2 個(gè)變量的輸出結(jié)果分別為“bbb”和“ccc”;在函數(shù)體外,全局變量 v1 和 v2 有效,因而在函數(shù)體外,這 2 個(gè)變量的輸出結(jié)果分別為“JavaScript”和“JScript”。

另外,全局變量 v3 和 v4 在函數(shù)體中沒(méi)有被覆蓋,因而輸出的是全局變量的值,所以 v3 在函數(shù)體內(nèi)和體外的輸出結(jié)果都為“Script”,而 v4 變量的賦值在函數(shù)調(diào)用的后面,因而在函數(shù)體中的 v4 輸出結(jié)果為“undefined”,而在函數(shù)體外的輸出是在聲明之后,所以結(jié)果為“VBScript”。lv 是局部變量,因而在函數(shù)體外訪問(wèn)會(huì)報(bào)“ReferenceError”錯(cuò)誤。

上述代碼在 Chrome 瀏覽器中運(yùn)行后,打開瀏覽器的控制臺(tái),可以看到下圖所示的輸出結(jié)果

JavaScript作用域分為哪兩類

上圖 所示報(bào)第 18 行代碼(即示例 ① 處注釋的代碼)中的 lv 沒(méi)有定義的引用錯(cuò)誤,這是因?yàn)?lv 變量為局部變量,離開函數(shù)后無(wú)效。將這行代碼注釋后再運(yùn)行,此時(shí)打開瀏覽器控制臺(tái)可看到下圖所示結(jié)果

JavaScript作用域分為哪兩類

【推薦學(xué)習(xí):javascript高級(jí)教程】

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
婷婷综合成人| 国产欧美日韩精品一区二区免费| 久久毛片亚洲| 免费亚洲婷婷| 国产农村妇女精品一区二区| 欧美日韩国产观看视频| 亚洲乱亚洲高清| 99视频精品全国免费| 久久精品资源| 日本精品久久| 老色鬼久久亚洲一区二区| 成人啊v在线| 日韩专区精品| 亚洲美女久久精品| 7m精品国产导航在线| 视频一区视频二区中文| 欧美午夜不卡| 亚洲视频综合| 美女亚洲一区| 国产99久久久国产精品成人免费| 日韩一区二区三区精品| 久久亚洲图片| 中文字幕一区二区三区四区久久 | 自由日本语亚洲人高潮| 999国产精品| 夜久久久久久| 亚洲欧美久久久| 美女亚洲一区| 国精品一区二区三区| 欧美 日韩 国产一区二区在线视频| 午夜影院欧美| 老司机久久99久久精品播放免费| 久久精品影视| 老司机久久99久久精品播放免费| 亚洲综合日本| 中文无码日韩欧| 免费在线亚洲欧美| 午夜影院欧美| 欧美日本二区| 四虎4545www国产精品| 亚洲网站视频| 欧美+亚洲+精品+三区| 精品一区三区| 婷婷精品久久久久久久久久不卡| 亚洲男人在线| 日韩一区亚洲二区| 精品国产91| 国产一区欧美| 国产精品手机在线播放| 99tv成人| 免费看久久久| 视频在线观看一区二区三区| 美女精品久久| 亚洲在线久久| 日韩欧美自拍| 91国内精品| 午夜欧美精品| 麻豆国产在线| 性色av一区二区怡红| 国产欧美91| 天堂av在线一区| 日韩成人精品一区二区| 99re国产精品| 欧美aa在线观看| 国产亚洲精品美女久久久久久久久久| 蜜桃精品在线| 久久不卡日韩美女| 日韩欧美美女在线观看| 1024精品一区二区三区| 国产精品夜夜夜| 婷婷综合电影| 伊人久久大香线蕉av超碰演员| 精品国产欧美| 欧美综合二区| 久久亚洲精品中文字幕蜜潮电影| 国产成人1区| 国产乱码精品一区二区三区亚洲人 | 国产美女高潮在线| 久久精品99久久久| 日韩毛片一区| 一区二区精彩视频| 老牛影视一区二区三区| 亚洲在线电影| 国产精品婷婷| 久久毛片亚洲| 日韩国产激情| 精品欧美一区二区三区在线观看| 国产高潮在线| 快播电影网址老女人久久| 天堂√中文最新版在线| 国产欧美日韩视频在线 | 日韩中文字幕区一区有砖一区| 亚洲一区区二区| 在线日韩成人| 亚洲精品观看| 免费看久久久| 成人免费一区| 日韩精品一页| 精品一区视频| 日本在线高清| jizzjizz中国精品麻豆| 亚洲网站视频| 涩涩涩久久久成人精品| 久久av超碰| 亚洲日本网址| 免费人成黄页网站在线一区二区| 亚洲精品国产偷自在线观看| 亚洲一区二区三区久久久| 国产亚洲精品美女久久| 韩国久久久久久| 欧美日韩国产一区二区三区不卡 | 欧美激情三区| 蜜臀av亚洲一区中文字幕| 久久激情中文| 日韩精品永久网址| 国产精品久一| 日韩精品一区二区三区中文在线| 国产精品国产三级国产在线观看| 热久久国产精品| 欧美va亚洲va日韩∨a综合色| 色综合视频一区二区三区日韩 | 99热精品在线观看| 亚洲精品在线影院| 精品一区视频| 加勒比视频一区| 精品久久美女| 麻豆视频久久| 精品不卡一区| 国产精品99精品一区二区三区∴| 日韩专区在线视频| 蜜臀久久久久久久| 免费成人网www| 国产亚洲亚洲| 国产精品99视频| 国产一区精品福利| 久久男人av资源站| 九九精品调教| 2023国产精品久久久精品双| 亚洲一区二区三区高清| 久久美女精品| 国内激情久久| 日本欧美一区二区在线观看| 日韩精品a在线观看91| 婷婷成人av| 伊人久久视频| 日韩福利视频导航| 福利一区二区三区视频在线观看| 精品欠久久久中文字幕加勒比| 成人国产精品一区二区网站| 欧美中文字幕一区二区| 久久91视频| 另类中文字幕国产精品| 91成人在线精品视频| 久久久久午夜电影| 欧美日韩高清| 精品一区av| 日韩精品社区| 久久精品99久久无色码中文字幕| 亚洲二区在线| 国产精品久久久久久久久久久久久久久 | 精品亚洲成人| 激情综合自拍| 蜜桃视频在线观看一区| a日韩av网址| 蜜臀av免费一区二区三区| 久久av日韩| 亚洲视频www| 黄色在线网站噜噜噜| 国产午夜精品一区二区三区欧美 | 美女视频一区在线观看| 日韩欧美一区二区三区在线视频| 日韩视频久久| 国产精品v日韩精品v欧美精品网站 | 国产毛片久久久| 亚洲性图久久| 欧美亚洲一区二区三区| 伊人久久大香线蕉av不卡| 国产精品主播| 亚洲一区欧美激情| 中文字幕在线看片| 一区二区三区四区日韩| 久久九九国产| 欧美一区在线观看视频| 亚洲一区二区免费看| 久久99国产精品视频| 免费观看在线综合色| 国产一区二区三区探花| 日韩黄色av| 日本欧美一区二区| 国产午夜精品一区二区三区欧美 | 综合激情五月婷婷| 免费观看不卡av| 日韩欧美自拍| 精品国产午夜肉伦伦影院| 日韩精品视频网站| 中文字幕亚洲影视| 蜜臀va亚洲va欧美va天堂| 久久午夜精品一区二区| 99国内精品| 91成人精品|