let关键字
let关键字用来声明变量,使用let声明的变量有几个特点:
-
不允许在相同作用域内重复声明
-
块级作用域,外面找不到
-
不存在变量提升
console.log(a); //Uncaught ReferenceError: Cannot access 'a' before initializatio let a = 4 -
不影响作用域链
let a = 123; function fn1(){ let a= 456; console.log(a); } fn1() //456
应用场景:以后声明变量使用let就对了
const关键字
const 关键字用来声明常量,const声明有以下特点:
-
声明一定要赋初始值
const VERSION = 2.0; console.log(VERSION); VERSION = 12 //报错 -
不允许重复声明
-
值不允许修改
-
块级作用域,外面找不到
注意:对象属性修改和数组元素变化不会触发const错误
应用场景:声明对象类型使用const,非对象类型声明选择let