ES6之命令妙用

4、实例

     下边是一道分外经典的面试题,问点击按钮打印出来的结果是什么样:

图片 1
 
        
在这些例子中,点击那3个按钮打印的都是:3,原因就是此时的i是一个大局变量i,按钮只是得到了i的引用。也就是说按钮的i指向的同一个对象i,那么i的变化会同时影响到这多少个按钮。i进过训话后化作了3,所以点击按钮打印出来的就都是3了。
不过我们想要的结果是:依次打印0、1、2咋办?此时就是可以行使let命令,修改一下代码看一下:

图片 2
 
       
        在代码中只用把 var i 改成 let i
即可
,现在在for循环外打印i已经取得不到了,i已经不再是全局变量。此时点击按钮看到打印的结果为:0
1 2 ,达到了俺们的预想。

       
这就是ES6中的let命令我们学会了吧?当然let只是ES6语法规范中的冰山一角,迪拜尚学堂web前端培训将为你进献更多的可观实用的前端相关文化!

 

3、不设有变量成效域提高

拔取let时,必须先阐明再利用,假诺在宣称此前运用就会报错,用var时则会显示undefined。

 图片 3

  • 块级功用域有效
  • 不同意再一次讲明
  • 不设有变量效用域提高

 很三人都闻讯过ES6(也就是ECMAScript的新一代标准)并且对她充满了向往,下面通过一个ES6中小知识点——let命令,来解开她的地下边纱,让大家开头认识一下ES6的语法规范。
       
let命令属于ES6中的一个中坚语法,与原有Javascript中的var的机能雷同,都是用来声称一个变量
。可是,他具有了一些新的特性和采取正规:

2、不同意再一次申明

      
使用let讲明的变量不同意出现同名,同名就报错。使用var的话就从未有过这一个范围。

图片 4

1、块级功能域有效

       
使用let声明的变量功能域范围只在花括号{}内立竿见影,而利用var阐明的变量则在花括号之外也可以利用。

图片 5
 
      
在花括号中用var讲明了一个a变量,用let讲明了一个b变量。在花括号之外访问时,a可以正常访问到1,然而b却不可以。原因是let表明的变量超出{}之后,就访问不到了