循环遍历嵌套的json对象
Looping through nested json object
我有一个设计糟糕的JSON对象,不幸的是,我现在无法更改它,它包含许多对象。以下是我正在使用的示例:
var land = [
{"name":"city","value":"Los Angeles"},
{"name":"state","value":"California"},
{"name":"zip","value":"45434"},
{"name":"country","value":"USA"}
];
以下是我如何循环通过I:
$(document).ready(function(){
$.each(land, function(key,value) {
$.each(value, function(key,value) {
console.log(key + ' : ' + value);
})
});
})
结果如下:
name : city
value : Los Angeles
name : state
value : California
name : zip
value : 45434
name : country
value : USA
我的目标是得到这样的结果:
city : Los Angeles
state : California
zip : 45434
country: USA
我在这里错过了什么?我如何达到预期效果?提前感谢:(
您可以使用ecmascript 5的forEach方法:
land.forEach(function(entry){
console.log(entry.name + " : " + entry.value)
} );
或者使用jquery来支持传统的web浏览器:
$.each(land,function(index,entry) {
console.log(entry.name + " : " + entry.value)
});
不要循环子对象,只显示其属性。
var land = [{
"name": "city",
"value": "Los Angeles"
}, {
"name": "state",
"value": "California"
}, {
"name": "zip",
"value": "45434"
}, {
"name": "country",
"value": "USA"
}];
$.each(land, function(index, object) {
console.log(object.name, ": ", object.value);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
您只需要一个forEach()
循环就可以得到这个结果。
var land = [{
"name": "city",
"value": "Los Angeles"
}, {
"name": "state",
"value": "California"
}, {
"name": "zip",
"value": "45434"
}, {
"name": "country",
"value": "USA"
}];
land.forEach(function(e) {
console.log(e.name + ' : ' + e.value);
})
不要遍历对象。您只需要一个循环就可以实现这一点。
$(document).ready(function(){
$.each(land, function(key,value) {
console.log(value.name + ' : ' + value.value);
});
})
如果所有对象(name
和value
(中的属性名称都相同,则执行类似操作。
$.each(land, function(key,value) {
console.log(value.name + ' : ' + value.value);
});
var converter = function(object){
return {city: object[0].value,
state: object[1].value,
zip: object[2].value,
country: object[3].value
}
}
converter(land)
对象{城市:"洛杉矶",州:"加利福尼亚",邮编:"45434",国家:"美国"}
相关文章:
- jQuery匹配JSON对象的部分文本
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 使用JS将数组转换为json对象
- 如何为json对象中的段发送array[]
- 将JSON对象传递给angular指令
- 更改JSON对象的结构
- 访问JSON对象内部的数组元素
- 在ejs-partial中对JSON对象进行迭代
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- 访问嵌套JSON对象的键,其中键是动态的
- json对象中缺少对象循环
- 发送json对象或使用express路由呈现视图
- 在play2框架中向json对象添加下拉列表项
- 元素名称上带有短划线 (-) 字符的 Json 对象
- autocomplete不接受源的json对象
- 如何在javascript中创建动态json对象
- 在使用客户端脚本时拾取JSON对象
- 如何通过json对象数组为嵌套对象赋值
- 构造JSON对象