0

请原谅我的困惑,但我怎样才能获得嵌套在这个对象中的name键的值:

{
    "id":"5SA72165CP580074WLPMNIYA",
    "transactions":[{
        "amount":{
            "total":"23.80",
        },
        "item_list":{
            "items":[{
                "name":"Gateway", // THIS!
            }]
        },
        "related_resources":[{
            "sale":{
                "id":"1PD13091HH4593923",
            }
        }]
    }]
}

我试图这样得到它:

console.log(transactions[item_list.items[name]])

它返回未定义

4

2 回答 2

1

可能是这样的

let dynamicContent = {
    "id":"5SA72165CP580074WLPMNIYA",
    "transactions":[{
        "amount":{
            "total":"23.80",
        },
        "item_list":{
            "items":[{
                "name":"Gateway", // THIS!
            }]
        },
        "related_resources":[{
            "sale":{
                "id":"1PD13091HH4593923",
            }
        }]
    }]
};

dynamicContent.transactions.forEach(function(itemList) {
  itemList.item_list.items.forEach(function(element){
    if(element.hasOwnProperty("name")) {
      console.log(element["name"]);
    }
  });
});

我基本上是在遍历数组部分。你可以玩弄上面的逻辑来得到你想要的。

希望这可以帮助!

于 2018-10-30T23:11:13.640 回答
0

如果你知道属性的索引不会改变,你可以通过索引深入了解它:

console.log(transactions[0].item_list.items[0].name)
于 2018-10-30T22:44:14.837 回答