如何使用变量选择要搜索的对象的哪个属性?

时间:2014-12-12 02:46:34

标签: javascript object javascript-objects

我下载了一些我已经转换为对象的JSON。我现在需要能够深入搜索第二级和第三级,并指定在变量中搜索哪个属性。

这是我的代码尝试。

for (var j = 0; j < currentSnapshot.products.length; j++) {
        currentSnapshot.products[j].[firstLayer]; // Is this line kosher?
        if (secondLayer) {
            for (var i = 0; i < secondLayer.length; i++) {
                secondLayer[i]; // Do something.
            };
        };
    };

最好的方法是什么? 谢谢你的帮助。

它看起来像是。 。我正在寻找.hasownproperty。你如何深入研究第二层 - 属性的属性?

1 个答案:

答案 0 :(得分:1)

我不确定我理解你的要求,但我会尝试回答:

for (var j = 0; j < currentSnapshot.products.length; j++) {
    var secondLayer = currentSnapshot.products[j][firstLayer];
    if(secondLayer){
        for(var i = 0; i < secondLayer.length; i++) {
            secondLayer[i]; // Do something.
        };
    };
};

也就是说,假设firstLayer已经引用了一个字符串,该字符串是您要访问的属性。这也假设currentSnapshot.products是一个对象数组,secondLayer也是一个数组。

另外,请注意我删除了.products[j].[firstLayer]中方括号之间的句点,这是语法错误。