js 作为属性的变量

当声明一个javascript全局变量时,实际上是定义了全局对象的一个属性。

当使用var声明一个变量时,创建的这个属性是不可配置的,也就是说这个变量无法通过delete运算符来删除。可能你已经注意到,如果你没有使用严格模式并给一个未声明的变量赋值的话,javascript会自动创建一个全局变量。以这种方式创建的变量是全局对象的正常可本会属性,并可以删除它们:

 var a =1;
b =2;
this.b2 = 3;
delete a; //不可删除
delete b; //可删除
delete this.b2 //可删除

javascript全局变量是全局对象的属性,这是在ECMAScript 5规范称为“声明上下文对象。javascript可以允许用this关键字来引用全局对象,却没有方法可以引用局部变量中存放的对象。这种存放局部变量的对象的特有性质,是一种对我们不可见的内部实现。然而,这些局部变量对象存在的观念是非常重要的。

上一篇:js设计模式总结-单例模式


下一篇:Zabbix系统数据采集方法总结