[英]How to Iterate through an array object inside another array object (JSON)?
您可以使用filter
來確定是否可以找到對象屬性,然后返回該對象。
result[0].Attributes.filter(obj => obj.name === name);
下面是一個例子:
let result = [{ Attributes: [{ name: "Mario" }, { name: "Luigi" }, { name: "Toad" }, { name: "Peach" } ] }] function lookfor(name) { return result[0].Attributes.filter(obj => obj.name === name); } console.log(lookfor("Mario")); console.log(lookfor("Peach"));
for(var i in array){
var attr = array[i].Attributes;
for(var l in attr){
// attr[l].Name returns name
// attr[l].Value returns values
}
}
您可以使用 map 迭代數組
arrributes.map(function(arr) => {
console.log(arr.Name, arr.Value)
})
Object.keys(result).forEach(key => { let resultObject = result[key].map(array => { if (array.Name == "given_name") { console.log(array.value) } else if (array.Name == "email") { console.log(array.value); } }); });
const response = [ { Attributes: [ {Name: 'given_name', Value: 'name 1'}, {Name: 'family_name', Value: 'family 1'}, {Name: 'email', Value: 'email1@gmail.com'} ] }, { Attributes: [ {Name: 'given_name', Value: 'name 2'}, {Name: 'family_name', Value: 'family 2'}, {Name: 'email', Value: 'email2@gmail.com'} ] }, ]; const users = response.map((ele) => { const { Attributes } = ele; return Attributes.reduce((agg, {Name, Value}) => { if (Name === 'given_name') { agg.name = Value; } if (Name === 'email') { agg.email = Value; } return agg; }, {}); }); console.log(users);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.