javascript

位置:IT落伍者 >> javascript >> 浏览文章

javascript检测对象中是否存在某个属性判断方法


发布日期:2020年01月22日
 
javascript检测对象中是否存在某个属性判断方法

检测对象中属性的存在与否可以通过几种方法来判断

使用in关键字

该方法可以判断对象的自有属性和继承来的属性是否存在

代码如下:

var o={x:};

"x" in o; //true自有属性存在

"y" in o; //false

"toString" in o; //true是一个继承属性

使用对象的hasOwnProperty()方法

该方法只能判断自有属性是否存在对于继承属性会返回false

代码如下:

var o={x:};

ohasOwnProperty("x"); //true自有属性中有x

ohasOwnProperty("y"); //false自有属性中不存在y

ohasOwnProperty("toString"); //false这是一个继承属性但不是自有属性

用undefined判断

自有属性和继承属性均可判断

代码如下:

var o={x:};

ox!==undefined; //true

oy!==undefined; //false

otoString!==undefined //true

该方法存在一个问题如果属性的值就是undefined的话该方法不能返回想要的结果如下

代码如下:

var o={x:undefined};

ox!==undefined; //false属性存在但值是undefined

oy!==undefined; //false

otoString!==undefined //true

在条件语句中直接判断

代码如下:

var o={};

if(ox) ox+=; //如果x是undefinenullfalse" "或NaN它将保持不变

上一篇:JS获得URL超链接的参数值

下一篇:浅析onsubmit校验表单时利用ajax的return false无效问题