-
var
存在提升,我们能在声明之前使用。
let、
const`因为暂时性死区的原因,不能在声明前使用 -
var
在全局作用域下声明变量会导致变量挂载在window
上,其他两者不会 -
let
和const
作用基本一致,但是后者声明的变量不能再次赋值。
案例
for(let i = 0 ; i<5 ; i++) {
let i = 'jing';
console.log(i); // jing *5
}
console.log(i); //Error:i is not defined