ES6 - let、const 和 block 作用域

let 允许创建块级作用域,ES6 推荐在函数中使用 let 定义变量,而非 var

var a = 2;
{
  let a = 3;
  console.log(a); // 3
}
console.log(a); // 2

在块级作用域有效的另一个变量声明方式是 const,它可以声明以个常量。ES6 中,const 声明的常量类似于指针,它指向某个引用,也就是说这个「常量」并非一成不变的

{
  const ARR = [5,6];
  ARR.push(7);
  console.log(ARR); // [5,6,7]
  ARR = 10; // TypeError
}
  • let 关键词声明的变量不具备变量提升(hoisting)特性
  • let 和 const 声明只在最靠近的一个块中(花括号内)有效
  • 当使用常量 const 声明时,使用大写变量
  • const 在声明时必须被赋值

猜你喜欢

转载自blog.csdn.net/qq_38265784/article/details/80055048