所有 Java印物体都是相关的阵列,因此确实容易。 您实际上有几种选择,因为物体可拥有自己的特性、其继承的原型、具有未界定价值的特性和具有“falsey”价值的特性(<条码>未界定的、<代码>null、0<>
、>>>>
、或当然还有false
。 (物体没有 财产与未确定价值者之间的差额)
检查物体是否具有特性: 请注意:
function someName(obj) {
if (!obj ||
!obj.hasOwnProperty( myOneKey ) ||
!obj.hasOwnProperty( myOtherKey ))
return false;
}
// Do other stuff
}
检查物体是否拥有财产? 通过原型: 页: 1
function someName(obj) {
if (!obj ||
!( myOneKey in obj) ||
!( myOtherKey in obj))
return false;
}
// Do other stuff
}
检查物体是否拥有(直接或通过原型)并且未界定: 2. 你们期望的是未界定的价值:
function someName(obj) {
if (!obj ||
typeof obj.myOneKey === "undefined" ||
typeof obj.myOtherKey === "undefined")
return false;
}
// Do other stuff
}
检查财产是否伪造(un Defin
,null
,0
,>
,或当然,false
,不论为何: Just use!
:
function someName(obj) {
if (!obj ||
!obj.myOneKey ||
!obj.myOtherKey)
return false;
}
// Do other stuff
}
不管怎样使用:
var obj = {
myOneKey: fred ,
myOtherKey: barney
};
someName(obj);