块级绑定
let 声明
var
声明变量存在变量提升。
let
声明的语法与var
的语法一致。
let
声明会将变量的作用域限制在当前代码块中,并且不存在变量提升。必须先声明再使用。
块级作用域在两种情况下被创建:
- 在一个函数内部。
- 在一个代码块(由一对花括号包裹)内部。
禁止重复声明:如果一个标识符已经在代码块内部被定义,那么在此代码块内使用同一个标识符进行let
声明就会抛出错误。
嵌套的作用域中内部的声明会屏蔽外部的声明。
常量声明
const
声明用于声明一个不可改变的量,不可以重新赋值,所以必须在声明时初始化。
const
声明与let声明特性类似。
const
声明的变量为常量,不可以重新赋值。
const
声明会阻止对于变量绑定与变量自身值的修改,这意味着const
声明并不会阻止对变量成员的修改。
可以修改用const
声明的对象的属性。