JavaScript 向未声明的变量分配值

如果您把值赋给尚未声明的变量,该变量将被自动作为 window 的一个属性。
这条语句:

carname="Volvo";

将声明 window 的一个属性 carname。
非严格模式下给未声明变量赋值创建的全局变量,是全局对象的可配置属性,可以删除

var var1 = 1; // 不可配置全局属性
var2 = 2; // 没有使用 var 声明,可配置全局属性

console.log(this.var1); // 1
console.log(window.var1); // 1
console.log(window.var2); // 2

delete var1; // false 无法删除
console.log(var1); //1

delete var2; 
console.log(delete var2); // true
console.log(var2); // 已经删除 报错变量未定义

猜你喜欢

转载自blog.csdn.net/Serena_tz/article/details/114084457
今日推荐