let和const

新的赋值语句let和const

1.弥补了var语句的某些不足

2.通过let定义的变量具有块级作用域,不存在变量提升

3.通过const定义的常量,其引用不能改变,同样具有块级作用域,不存在变量提升

4.和var不同,let命令、const命令、class命令声明的全局变量,不属于顶层对象的属性。

let和const命令

1.var的作用域是函数体内,不是块级作用域

2.let是更完美的var,let的变量的作用是块级作用域

3.let声明的全局变量不是全局对象属性,不可以通过window.变量名的方式访问

4.let声明的变量直到控制流到达该变量被定义的代码行时才会被装载,
所以在到达之前使用该变量会触发错误

5.用let重定义变量会抛出一个语法错误(SyntaxError)

6.const声明的变量与let声明的变量类似,它们的不同之处在于,
const声明的变量只可以在声明时赋值,不可随意修改,
否则会导致SyntaxError(语法错误)

7.const声明后必须要赋值

你可能感兴趣的:(let和const)