ES6中let与var有何具体区别?

更新于
2026-10-01 09:39:52
0阅读来源:SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计915个文字,预计阅读时间需要4分钟。

ES6中let与var有何具体区别?

最近看了很多文章,偶然间发现ES6新增了关键字let。它和var有类似的功能。一开始使用它时,发现它让我对之前的一些常规东西产生了怀疑。下面我们先看看这个关键字。

最近看了很多文章,偶然间看到ES6中新增了一个关键字 let ,它具有与 var 关键字相似的功能。一开始使用它时,发现它让我对之前一些习以为常的东西产生了怀疑。

下面先让我们看看它和 var 之间用法的不同

 {    var a = 10;    let b = 8;  }  a //10  b // Referenceerror :b is not defined

上面在代码块中声明了两个变量并分别赋值输出到控制台,结果a的变量成功输出,b的输出结果产生了报错。可见,let声明的变量只在它所在的代码块中产生作用。同时,我们也能想到它最好的使用方法就是在for循环中使用。

下面我们再举个例子来观察它与 var 之间的区别:

 var a = [ ]   for(var i = 0;i<6; i++){     a[i] = function(){       console.log(i);     }   }   console.log("i的值:",i);   a[ 4 ]( );

  它的输出结果为:

    i 的值:6

    6

  为什么是 6 呢?一开始我也被吓懵逼了,这有悖于我的常识,以往没注意到的地方,居然这么的low。在我的意识里结果应该 4,而不是 6 。我想了很久也想不明白,以我这种小白的技术,自然是很难搞懂这种资深技术宅的问题。所以,我查了很多资料来解决这个问题,才搞明白。

阅读全文
标签:区别最

本文共计915个文字,预计阅读时间需要4分钟。

ES6中let与var有何具体区别?

最近看了很多文章,偶然间发现ES6新增了关键字let。它和var有类似的功能。一开始使用它时,发现它让我对之前的一些常规东西产生了怀疑。下面我们先看看这个关键字。

最近看了很多文章,偶然间看到ES6中新增了一个关键字 let ,它具有与 var 关键字相似的功能。一开始使用它时,发现它让我对之前一些习以为常的东西产生了怀疑。

下面先让我们看看它和 var 之间用法的不同

 {    var a = 10;    let b = 8;  }  a //10  b // Referenceerror :b is not defined

上面在代码块中声明了两个变量并分别赋值输出到控制台,结果a的变量成功输出,b的输出结果产生了报错。可见,let声明的变量只在它所在的代码块中产生作用。同时,我们也能想到它最好的使用方法就是在for循环中使用。

下面我们再举个例子来观察它与 var 之间的区别:

 var a = [ ]   for(var i = 0;i<6; i++){     a[i] = function(){       console.log(i);     }   }   console.log("i的值:",i);   a[ 4 ]( );

  它的输出结果为:

    i 的值:6

    6

  为什么是 6 呢?一开始我也被吓懵逼了,这有悖于我的常识,以往没注意到的地方,居然这么的low。在我的意识里结果应该 4,而不是 6 。我想了很久也想不明白,以我这种小白的技术,自然是很难搞懂这种资深技术宅的问题。所以,我查了很多资料来解决这个问题,才搞明白。

阅读全文
标签:区别最