如何检查是否存在任何javaScript对象的属性,如果存在,那么它是否具有有效值? 实际上,我是初学者,并试图解决这个问题 -
检查第二个参数是否在第一个参数的所有对象(这是一个对象数组)上是真实的.i.e。
{{1}}
我知道这不是最好的解决方法。有没有更好的方法来做到这一点?我不喜欢我的代码中的那句长时间。我已经看到其他SO链接 - link1,{{ 3}}但它们似乎都没有解决我的问题。任何形式的帮助都非常感谢。 附:这段代码甚至不适用于某些真实案例。
答案 0 :(得分:1)
o = new Object();
o.prop = 'exist';
if(o.hasOwnProperty('prop')){
if(o['prop']){
alert('good value')
}
}
答案 1 :(得分:1)
这就是我所寻找的并且绝对符合逻辑 -
for(var i in array){
if((prop in array[i])&& Boolean(array[i][prop]))
{
//do something
}
}
Boolean()函数是我的一天。请参阅此link了解详情。
答案 2 :(得分:0)
请看下面的例子。
让json对象为
var a = { obj1:"a",obj2:"b"}
检查对象是否存在,可以使用hasOwnProperty()方法。
a.hasOwnProperty("obj2") //this will return true
a.hasOwnProperty("obj3") // this will return false
检查对象的值
if(a["obj1"] && a["obj1"]!="" && a["obj"]!=0){
//place your logic here
}