我有一个多维对象,如下所示:
{
"links": [{"source":"58","target":"john","total":"95"},
{"source":"60","target":"mark","total":"80"}],
"nodes":
[{"name":"john"}, {"name":"mark"}, {"name":"rose"}]
}
我正在尝试评估“链接”中“总计”的值。我可以在一维数组中执行此操作,如下所示:
for (var i = 0; i < data.length; i++) {
for (var key in data[i]) {
if (!isNaN(data[i][key])) {
data[i][key] = +data[i][key];
}
}
};
但我无法弄清楚如何在二维中执行此操作(特别是通过名称调用键“total”的值)。
有人能让我走上正轨吗?谢谢!
最佳答案
从你的数组的结构是这样的原理出发,你可以迭代键和值:
var obj = {
"links": [{"source":"58","target":"john","total":"95"},
{"source":"60","target":"mark","total":"80"}],
"nodes":
[{"name":"john"}, {"name":"mark"}, {"name":"rose"}]
};
for (var key in obj){
obj[key].forEach(function(item){
for(var subkey in item){
if (subkey == 'total')
console.log(item[subkey]);
};
});
};
关于javascript - 评估多维对象中的键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40665219/