欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

es6 for循環(huán)中l(wèi)et和var區(qū)別詳解

 更新時(shí)間:2020年01月12日 10:23:32   作者:Dora Doris  
這篇文章主要介紹了es6 for循環(huán)中l(wèi)et和var區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

let和var區(qū)別:

for(var i=0;i<5;i++){
  setTimeout(()=>{
    console.log(i);//5個(gè)5
  },100) 
}
console.log(i);//5
console.log('=============')

for(let j=0;j<5;j++){
  setTimeout(()=>{
    console.log(j);//0,1,2,3,4
  },100) 
}
console.log(j);//報(bào)錯(cuò) j is not defined

為什么 用let就可以顯示正確結(jié)果,而var就不可以呢?

var是全局作用域,有變量提升的作用,所以在for中定義一個(gè)變量,全局可以使用,循環(huán)中的每一次給變量i賦值都是給全局變量i賦值。

let是塊級(jí)作用域,只能在代碼塊中起作用,在js中一個(gè){}中的語句我們也稱為叫一個(gè)代碼塊,每次循環(huán)會(huì)產(chǎn)生一個(gè)代碼塊,每個(gè)代碼塊中的都是一個(gè)新的變量j;

es6中不是說let聲明變量不能重復(fù)聲明嗎?看下邊例子:

{
  let a=123;
}
{
  let a=246;
}
console.log(a);//a is not defined;
{ 
  var b=1;
}
{ 
  var b=2;
}
console.log(b);// 2;

{}代表一個(gè)塊,這個(gè)時(shí)候let聲明的變量只在這個(gè)塊中起作用,而這個(gè)塊對(duì)var聲明的變量不起作用。因?yàn)関ar是全局作用域。

let a=1;
let a=2;
//Uncaught SyntaxError: Identifier 'a' has already been declared
//let不能重復(fù)聲明

let b=1;
var b=2;

// Uncaught SyntaxError: Identifier 'a' has already been declared
//let不能重復(fù)聲明


var c=3;
var c=4;
console.log(c)//4;var可以重復(fù)聲明

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • HTML長文本截取含有HTML代碼同樣適用的兩種方法

    HTML長文本截取含有HTML代碼同樣適用的兩種方法

    正如標(biāo)題所言我們可以使用CSS截?cái)嘧址篒E,FireFox,Opera ,Safari都兼容也可以使用js截取,具體實(shí)現(xiàn)如下,希望對(duì)大家有所幫助
    2013-07-07
  • javascript 有用的腳本函數(shù)

    javascript 有用的腳本函數(shù)

    大家注意看下,感覺應(yīng)該是批量給網(wǎng)頁的一些標(biāo)簽加樣式的函數(shù)。
    2009-05-05
  • MVVM模式中ViewModel和View、Model有什么區(qū)別?

    MVVM模式中ViewModel和View、Model有什么區(qū)別?

    這篇文章主要介紹了MVVM模式中ViewModel和View、Model有什么區(qū)別?本文分別解釋了它們的功能和作用,然后總結(jié)了它之間的區(qū)別,需要的朋友可以參考下
    2015-06-06
  • 詳解JSON.stringify()的5個(gè)秘密特性

    詳解JSON.stringify()的5個(gè)秘密特性

    這篇文章主要介紹了詳解JSON.stringify()的5個(gè)秘密特性,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Js組件的一些寫法

    Js組件的一些寫法

    今天看了rank的一篇javascript腳本控件topic,突然想總結(jié)一下一些寫JS組件的方法,或者說一些不同人的不同coding style。
    2010-09-09
  • ES6基礎(chǔ)之?dāng)?shù)組和對(duì)象的拓展實(shí)例詳解

    ES6基礎(chǔ)之?dāng)?shù)組和對(duì)象的拓展實(shí)例詳解

    這篇文章主要介紹了ES6基礎(chǔ)之?dāng)?shù)組和對(duì)象的拓展,結(jié)合實(shí)例形式詳細(xì)分析了ES6數(shù)組和對(duì)象拓展運(yùn)算符、拓展方法的使用及相關(guān)操作技巧,需要的朋友可以參考下
    2019-08-08
  • javascript實(shí)現(xiàn)切割輪播效果

    javascript實(shí)現(xiàn)切割輪播效果

    這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)切割輪播效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • javascript中&&運(yùn)算符與||運(yùn)算符的使用方法實(shí)例

    javascript中&&運(yùn)算符與||運(yùn)算符的使用方法實(shí)例

    &&和||總是傻傻分不清,在這里詳細(xì)記錄一下吧,也給你們分享一下,所以這篇文章主要給大家介紹了關(guān)于javascript中&&運(yùn)算符與||運(yùn)算符的使用方法,需要的朋友可以參考下
    2021-11-11
  • js實(shí)現(xiàn)右鍵菜單功能

    js實(shí)現(xiàn)右鍵菜單功能

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)右鍵菜單功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • uni-app使用countdown插件實(shí)現(xiàn)倒計(jì)時(shí)

    uni-app使用countdown插件實(shí)現(xiàn)倒計(jì)時(shí)

    這篇文章主要為大家詳細(xì)介紹了uni-app使用countdown插件實(shí)現(xiàn)倒計(jì)時(shí),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11

最新評(píng)論