在使用中呢let比var更加的严谨
如果我们这样定义的话,那么我们输出的值是undefined ,本应是报错的代码却正常输出
如果我们在输出属性之后用let进行定义,那么就会发生我们所期待的报错提示了
var和let的区别
在ES5 变量声明方式中是通过var来进行对于变量的定义的
- 在变量未赋值时,变量undefined(为使用声明变量时也为undefined)
- 作用域——var的作用域为方法作用域;只要在方法内定义了,整个方法内的定义变量后的代码都可以使用
在ES6变量声明方式中通过let来进行对于变量的定义
- 在变量为声明前直接使用会报错
- 作用域——let为块作用域——通常let比var 范围要小
- let禁止重复声明变量,否则会报错;var可以重复声明