最近开始看ECMA6,也就是ES2015,虽然比较老了,但还没看过,最近不怎么忙,平时也有用到es6,就正好看看
下面是我对let和var异同的理解,最后是const
var是我以前经常用来声明变量的,作用域是全局。
let是ES6新增的关键字,也是用来声明变量的,有所不同的是,let声明的变量作用域是块级的,也就是说只能在声明的块及其子级中使用,超出声明的块则会报错:该属性未定义。
这样做的好处是可以防止内层定义的同名元素覆盖外层的同名元素,防止全局污染。
const也是ES6新增的,用于定义只读的常量,也就是一经定义则无法修改,它保证的是指向的地址不变,并不是值不变,所以若定义的是数组或对象,是可以进行增删改的,只是不能改变指向的地址,会报错。