let 和 const是ES2015(ES6) 新增加的两个重要的 JavaScript 关键字。
1.let命令特点:
1.ES6新增let命令。
用来声明变量,用法类似var,但是它所声明的变量只在let命令所在的代码块内有效。使用方法如下:
2.不存在变量提升。
let不像var那样,会发生"变量提升"现象。
通过如下程序分析:
上面ES5和ES6两种写法只有c是var声明的,d是let声明的。输出结果为:
问题:
a[5]();
输出为9,b[5]();
输出为5。为什么呢?为什么a[5]();
输出不是理想中的5呢?
答案:
因为上述ES5写法循环结束的时候i的值已经为10,c=9,调用a[5]();