Javascript中声明变量 var特点:
var特点:
- 变量声明提升
- 可重复声明
- 全部会挂载在window
- var定义的变量是全局变量或者函数变量。
ES6中声明变量 let和声明常量 const特点:
let特点:
- 不会进行变量声明提升
- 会生成暂时性死区
- 变量不允许被重复定义
- 变量不可以被删除
- 不会挂载到window中
- 在for循环当中用let定义i 循环时可以保存 i 的值
- 会产生一个块级作用域,在块级元素中用let定义的变量只能在当前块级作用域中使用(注:凡是用{}包裹的都是块级作用域,但是除了对象以外)
const特点:
- 不会进行变量声明提升
- 会生成暂时性死区
- 必须在初始化时赋值。
- const声明的变量值不允许被修改
- 常量不允许被删除
- 不会挂载到window中
- 变量不允许被重复定义