javascript的全局变量寄存空间和delete、hasOwnProperty方法(等于php的unset和isset)

  • Post author:
  • Post category:java


javascript的全局变量,即非类变量和函数内变量,都寄存于window对象下,例如:

var a=1;

通常我们使用a变量时,是这样使用的

document.write(a);

但是知道了a变量定义之后,是寄存于window对象下的,就是也可以这么使用

document.write(window.a);

这样子在一些本来全局变量无法使用到的地方,就仍然可以使用全局变量了,因为window对象是任何地方都可以作用到的。

javascript下也有类似php的unset方法,用于释放变量定义,例如:

delete a;

这样就释放了a变量。

hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。

a = [2,3];//0键值和1键值有值

a.hasOwnProperty(0);//数组以0为键值的位是否已定义

true

a.hasOwnProperty(5);//数组以5为键值的位是否已定义

false



版权声明:本文为ownfire原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。