var与let的区别:
| 关键字 | 作用域 | 变量提升 |
|---|---|---|
var |
该语句所在函数内 | 存在 |
let |
该语句所在代码块内 | 不存在 |
作用域的Demo:
var x = 1;
let y = 2;
//输出 x 为 1 y 为 2
{
var x = 3;
let y = 4;
//输出 x 为 3 y 为 4
}
//输出 x 为 3 y 为 2
变量提升的Demo:
x=1
var x
//x = 1
//y=1
//let y 报错
总结
let像var的Pro版。let的使用会更清晰,更规矩。