无法访问对象属性(奇怪,因为它应该像往常一样工作)

时间:2012-05-02 13:31:31

标签: javascript object

我有一个非常奇怪的问题。我正在尝试访问子对象,但它无法正常工作。最简单的方法是向您展示FireBug的控制台输出:

console.log(DesignDocument)

DesignDocument: mwrNsBrowser
    html: e.fn.e.init[1]
    name: "Game Design Document"
    rootName: "Game Design Document"
    __proto__: Object
        afterLoadCategory: function (bitData, catName)...
        bits: Object
        hide: function ()...
        html: ""
        loadCategory: function (catName, parentBit)...
        name: ""
        rootName: ""
        show: function ()...
        tmp: Object

现在我正在尝试访问原型中定义的“位”对象。工作正常。

console.log(DesignDocument.bits)

Object
    DocumentSet1: Array[1]
        0: mwrBrowserBit
        length: 1

但这是问题所在。我尝试获取“DocumentSet1”数组:

var selector = "DocumentSet1";
console.log(DesignDocument.bits[selector])

undefined

它只是返回“未定义”! 我目前没有想到为什么这不起作用。希望有人可以告诉我,我太笨了......

1 个答案:

答案 0 :(得分:0)

数组DocumentSet1是DesignDocument.bits对象的一个​​属性,因此将其记录到控制台的正确语法是:

console.log(DesignDocument.bits.DocumentSet1);

或者如果要在数组中显示特定项目:

console.log(DesignDocument.bits.DocumentSet1[num]);