const
、 let
、var
的区别
const
、let
、var
都是用来声明变量的,但是之间有很明显的差异。- 常量赋值: 首先
const
用于声明常量,一旦被赋值就不能做修改,并且声明变量的同时必须赋值。 - 作用域:
let
与const
存在块级作用域,而var
只存在函数级作用域。 - 变量提升:
var
生命的变量会存放 window 对象上,同时var
声明的变量存在变量提升,而let
和const
不存在。 - 暂存性死区:
let
、const
存在暂存性死区,而var
不存在。 - 重复声明:
let
和const
不能重复声明,而var
可以。