我有这样的问题:我有一个JSON对象,我想在javascript函数中对它进行迭代,但它是由其他JSON对象组成的。例如,它是:
[
{"id"="1", "result"=[{"name"="Sam","age"="12"},{"sport"="soccer"}]},
{"id"="2", "result"=[{"name"="Paul","age"="43"},{"sport"="basketball"}]}
]我会对它进行迭代,以使用值,就像这样:
1)在第一次迭代中:我想使用:"Sam","12","soccer“
2)在第二次迭代中:我想使用:"Paul","43","basketball“
诸若此类。
你能帮我解决这个问题吗?
发布于 2013-04-24 18:20:44
首先,您必须修复您的对象文字。对于键-值对,必须使用而不是=。
在此之后,您可以通过以下方式进行迭代:
var obj = [ {"id":"1", "result":[{"name":"Sam","age":"12"},{"sport":"soccer"}]},
{"id":"2", "result":[{"name":"Paul","age":"43"},{"sport":"basketball"}]}];
for (var i = 0; i < obj.length; i += 1) {
console.log("Name", obj[i].result[0].name);
console.log("Age", obj[i].result[0].age);
console.log("Sport", obj[i].result[1].sport);
}如果你想用循环来完成整个遍历,你可以使用:
var obj = [ {"id":"1", "result":[{"name":"Sam","age":"12"},{"sport":"soccer"}]},
{"id":"2", "result":[{"name":"Paul","age":"43"},{"sport":"basketball"}]}];
for (var i = 0; i < obj.length; i += 1) {
for (var j = 0; j < obj[i].result.length; j += 1) {
var current = obj[i].result[j];
for (var prop in current) {
console.log(prop, current[prop]);
}
}
}https://stackoverflow.com/questions/16189395
复制相似问题