在Javascript中的嵌套对象内部访问数组值 [英] Access array value inside a nested object in Javascript
本文介绍了在Javascript中的嵌套对象内部访问数组值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我相信我们日常生活中使用的JSON对象类型很少:
I believe there are few types of JSON objects we work with in daily life:
具有键值属性的对象:
{
"key" : "value",
"key" : "value",
"key" : "value"
}
包含值作为数组的对象:
Object containing value as an array:
{
"key" : "value",
"key" : "value",
"key" : ["value1", "value2", "value3"],
}
包含值作为对象数组的对象:
Object containing value as an array of objects:
{
"key" : "value",
"key" : "value",
"key" : [
{"key" : "value"},
{"key" : "value"},
{"key" : "value"},
]
}
包含具有键-值属性的嵌套对象的对象,其中value是对象的数组:
Object containing nested object with key-value properties where value is an array of objects:
{
"key" : "value",
"key" : "value",
"key1" : {
"key11" : [
{"key" : "value"},
{"key" : "value"}
],
"key12" : [
{"key" : "value"},
{"key" : "value"}
],
"key13" : [
{"key" : "value"},
{"key" : "value"}
]
}
}
我已经访问了key1对象,并在key1对象中有一个数组,其中包含所有键.也就是说,
I have accessed key1 object and have an array with all they keys inside key1 object. That is,
arr = ["key11", "key12", key"13"];
我想循环遍历key1内部的所有键值属性,并且还循环遍历"key11","key12",...
I want to loop through all key-value properties inside key1 and also loop through "key11", "key12", ...
如何实现?
推荐答案
!(function(){
//data always like this:
// this just an array
var json_array = [
{id:1, name:"alex", age: 11},
{id:2, name:"bob", age: 12},
{id:3, name:"nn", age: 13},
];
// page total_page don't need loop, direct use it
var json_object = {
page: 1,
total_page: 20,
total_item: 300,
list: [
{id:1, name:"alex", age: 11},
{id:2, name:"bob", age: 12},
{id:3, name:"nn", age: 13},
]
}
// or for(var id in list_object){ console.log(list_object[id]['name']) }
var list_object = {
1: {id:1, name:"alex", age: 11},
2: {id:2, name:"bob", age: 12},
3: {id:3, name:"nn", age: 13},
}
// your data need some change
var data = {
"key" : "value",
"key" : "value",
"key1" : {
"key11" : [
{"key" : "value"},
{"key" : "value"}
],
"key12" : [
{"key" : "value"},
{"key" : "value"}
],
"key13" : [
{"key" : "value"},
{"key" : "value"}
],
}
}
// loop object
for(var i in data['key1']){
// loop array
data['key1'][i].map(function(item, i){
console.log(item['key'])
})
}
})()
这篇关于在Javascript中的嵌套对象内部访问数组值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文