这里所说的ES6是ECMAScript 6的简写,它是由JavaScript演变而来的。1996年11月,网景公司将JavaScript提交给欧洲计算机制造商协会(ECMA)进行标准化。ECMA-262的第一个版本于1997年6月被ECMA组织采纳,这也是ECMAScript(简称ES)的由来。
块级声明用于声明在指定块的作用域之外无法访问的变量。这里的块级作用域是指函数内部或者字符{}内的区域。
如下的代码,使用var定义的变量:
<script>
// 计算价格1。
function calculate1(vip) {
var amount = 0;
if (vip) {
var amount = 1;
var amount = 100;
var amount = 1000;
console.info(amount);
}
console.info(amount);
}
calculate1(true);
</script>
最终输出的结果如下图所示:
可以看到amount变量被最后的定义覆盖掉了。
在ES6中,用let限制块级作用域,而var限制函数作用域。代码如下