js--------------判断一个对象是否有某个属性-------------劉

Posted 花果山府邸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js--------------判断一个对象是否有某个属性-------------劉相关的知识,希望对你有一定的参考价值。

js检测对象中是否存在某个属性

  使用in关键字

  • var obj = {x:1}
    "x" in obj    //true 自身属性
    "j" in obj    //false 自身没有原型也没有
    "toString" in obj    //true  原型上的属性

    如果是原型链上的属性,判断也为true

  使用hasOwnProperty

var obj = {x:1}
obj.hasOwnProerty("x")    //true   自身属性
obj.hasOwnProerty("y")    //false  自身没有原型也没有
obj.hasOwnProperty("toString")    //false  原型上的属性

 

  使用undefined判断

var o={x:1};
o.x!==undefined;        //true
o.y!==undefined;        //false
o.toString!==undefined  //true

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

var o={x:undefined};
o.x!==undefined;        //false,属性存在,但值是undefined
o.y!==undefined;        //false
o.toString!==undefined  //true

 

  

以上是关于js--------------判断一个对象是否有某个属性-------------劉的主要内容,如果未能解决你的问题,请参考以下文章

如何判断出一个js对象是不是一个dom对象

js中如何判断一个DOM对象是不是存在?

如何判断js里的对象是不是存在

js怎么判断多层级对象是不是存在?

判断一个对象上是不是包含 一个属性的几种方法

请问js怎么判断一个变量是对象还是数组呢?