JavaScript 打臉史之 ES6 作用域 (一)
在先前打 ES 標(biāo)準(zhǔn)中,如果未聲明過 a ,在任何位置聲明 a = 1 即聲明了一個 window 下的全局變量 a;
{ a = 1 } for(b=1;b<2;b++){ c = 3 } function x(){ d = 4 } x() console.log(a) //1 console.log(b) //2 console.log(c) //3 console.log(d) //4
而在函數(shù)內(nèi)聲明 var a = 1,a 的作用域在當(dāng)前函數(shù)中,否則 a 的作用域即 window ,并且兩者都會變量提升;
console.log(a) //undefined console.log(b) //undefined console.log(c) //undefined { var a = 1 } for(var b=1;b<2;b++){ var c = 3 } function x(){ var d = 4 } x() console.log(a) //1 console.log(b) //2 console.log(c) //3 console.log(d) //d is not defined
而當(dāng)我們需要使用閉包,即實現(xiàn)暴露一個被隱藏的局部變量的時候,我們可以這樣來寫;
function x(){ var a = 1 b = function(){ console.log(a) } } x() b() //1
我們?yōu)榱吮┞兑粋€隱藏的局部變量,又暴露了一個全局變量 x ,故繼續(xù)改進,聲明一個匿名立即執(zhí)行函數(shù);
(function(){ var a = 1 b = function(){ console.log(a) } }()) b() //1
為了實現(xiàn)這樣的一個功能,我們竟需如此大費周折。
故,ES6 中的 let 應(yīng)運而生。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/106898.html
摘要:然而,臨近規(guī)范發(fā)布時,有建議提及未來的版本號切換為編年制,比如用同來指代在年末前被定稿的所有版本。總得來說就是版本號不再那么重要了,開始變得更像一個萬古長青的活標(biāo)準(zhǔn)。 你不知道的JS(下卷)ES6與之未來 第一章:ES的今與明 在你想深入這本書之前,你應(yīng)該對(在讀此書時)JavaScript的最近標(biāo)準(zhǔn)掌握熟練,也就是ES5(專業(yè)來說是ES 5.1)。在此,我們決定全方面地談?wù)撽P(guān)于將近的...
摘要:以上是面試中筆試涉及到的知識點或者后面被問到的只是點。也許是根據(jù)薪資和面試的等級來出題的。我剛面試完回家,吃了一個泡面,回憶下面試題。同時作為傳遞到構(gòu)造函數(shù),執(zhí)行了一次讓構(gòu)造函數(shù)里面的屬性和方法賦值了一份給。 css 如何水平垂直居中,請盡量多說幾種方法?很尷尬,我多次面試都被問到這個問題,fuck 定位(回答了)、table-cell布局、flex布局、translate+relat...
摘要:以上是面試中筆試涉及到的知識點或者后面被問到的只是點。也許是根據(jù)薪資和面試的等級來出題的。我剛面試完回家,吃了一個泡面,回憶下面試題。同時作為傳遞到構(gòu)造函數(shù),執(zhí)行了一次讓構(gòu)造函數(shù)里面的屬性和方法賦值了一份給。 css 如何水平垂直居中,請盡量多說幾種方法?很尷尬,我多次面試都被問到這個問題,fuck 定位(回答了)、table-cell布局、flex布局、translate+relat...
摘要:任務(wù)描述參考以下示例代碼,頁面加載后,將提供的空氣質(zhì)量數(shù)據(jù)數(shù)組,按照某種邏輯比如空氣質(zhì)量大于進行過濾篩選,最后將符合條件的數(shù)據(jù)按照一定的格式要求顯示在網(wǎng)頁上污染城市列表第一名福州樣例,第二名福州樣例,北京上海福州廣州成都西安在注 任務(wù)描述 參考以下示例代碼,頁面加載后,將提供的空氣質(zhì)量數(shù)據(jù)數(shù)組,按照某種邏輯(比如空氣質(zhì)量大于60)進行過濾篩選,最后將符合條件的數(shù)據(jù)按照一定的格式要求顯示...
摘要:源碼的代碼質(zhì)量很高,非常值得我等小輩學(xué)習(xí)。上面的技巧,若有任何不對,歡迎指正,也歡迎補充過段時間一定要寫源碼閱讀筆記好怕打臉逃 其實主要是性能小技巧。 循環(huán)優(yōu)化 循環(huán)體是執(zhí)行最多的,所以要確保其被最大限度的優(yōu)化. //提前計算好終止條件,存到局部變量中 for(var i=0, j = document.getElementsByTagName(a).length; i b) { ...
閱讀 804·2021-10-14 09:43
閱讀 2129·2021-09-30 09:48
閱讀 3451·2021-09-08 09:45
閱讀 1101·2021-09-02 15:41
閱讀 1894·2021-08-26 14:15
閱讀 779·2021-08-03 14:04
閱讀 2982·2019-08-30 15:56
閱讀 3077·2019-08-30 15:52