JS中var、let、const 的区别
- var、let声明的是变量,第一次赋值之后可以重新赋值;const声明的是常量,声明时就要赋值,且后续不能重新赋值。
- 同一作用域下,var声明的变量可以重复声明,let、const不可以。
- var声明的变量可以先使用后声明(存在变量提升),let、const只能先声明后使用(存在暂时性死区),否则会报错。
注意:
- 如果只写了变量,没有加关键字,会自动补上var作为关键字(不会报错)。
- const 基本数据类型 => 存储的是具体的值,第一次赋值之后,不可以再更改。
- const 引用数据类型 => 存储的是引用数据类型的地址,只要地址不变,引用数据内部的值是可以改变的。