var与let区别:
- var可以声明全局变量与局部变量,并且具有变量提升机制;
- let声明块级变量,同时也是为了解决var的局限性;
案例:
// 1. var/let 定义
var v1 = 112;
console.log(this.v1, window.v1); // 输出结果为 112 112
let v2 = 113;
console.log(this.v1); // 输出结果为undefined
// 2. 变量提升
function f1() {
console.log(v1); // 输出为undefined
var v1 = 223;
console.log(v1); // 输出为223
}
变量提升
变量提升只提升声明部分,不提升赋值部分
网友评论