每天学习一点新技术,认真对待生活(es6中let的用法)
每天都要进步一点点!
今天开始学习新技术ES6
什么是ES6,ES2016,ES2017?
ES6就是ES2015,也是一种泛指,指下一个新版本,从ES6开始,官方的叫法就不叫做ES6,叫做ES2015。以此类推。
ES是一个不断迭代中的标准,一个功能是否最终进入ES标准,要经理四个阶段
stage0 最初的方案提案,并未经过大多数的慎重考虑
stage1 比较正规的提案
stage2 标准的提案
stage3 要考虑这个提案并融入标准之中。
以上是关于ES6的一些介绍,然后学习ES6之前应该先要了解下Bable
什么是Bable?
Bable是一个广泛使用的ES6转码器,可以将ES6代码转换为ES5代码,从而在现有的环境执行。Bable的安装我们之后研究,现在学习研究一下let命令。
ES6新增了let命令
1.let与var类似,当时let所声明的变量,只在let命令所在的代码块内有效。
{
let a=6;
var b=4;
}
console.log(a);//a is not undefined
console.log(b);//b =4;
这就很适合应用于for的情况里,这样i就不是一个全局变量,只在这个循环中可以被使用。
2.let 解决了声明提升的问题
console.log(a) //会输出undefined 因为var a;声明提升
var a=5;
console.log(a)//则会报错,取消了声明提升
let a=5;
3.let有一个暂时性死区
我的理解就是如果要使用let声明一个变量了。那么之前使用这个变量都会报错,只有在用let声明之后才不会报错。如果不声明 那么就不会报错 但一旦声明,就会报错。
例子:
a=5;
console.log(a);
let a;
输出结果会报错说a is not define.
后面的以后在总结