如何检查属性是否是具有属性的对象" __ deferred"

时间:2016-05-26 11:06:05

标签: javascript

我试图找出一个属性是否只有一个具有属性的对象" __ deferred",

以下是Chrome开发人员工具中的外观,

http://image.prntscr.com/image/563cb635f6d4491e9b8fe66ba06e3143.png

更新以明确

我可能有动态对象,我真正想要的是

if(property.Object.hasOnlyProperty ==' __ deferred')< - 我知道这不起作用,但我想要类似的东西..

我不希望将属性添加到我的expandedChildResults数组中,如果它是图片中的对象,则完全相同。

2 个答案:

答案 0 :(得分:1)

hasOwnProperty("propertyName")方法应该可以告诉您对象中是否存在__deferred

答案 1 :(得分:1)

如果您不关心从原型继承的非可枚举属性和属性(请参阅Enumerability and ownership of properties),则可以使用Object.keys

function isPropertyAnObjectWithJustSingle__deferred(property) {
    var keys;
    return typeof property === 'object' && // test if it's and object
        (keys = Object.keys(property)).length === 1 && // test if it has just sibgle property
        keys[0] === '__deferred'; // test if that property is '__deferred'
}