【发布时间】:2016-02-06 03:07:13
【问题描述】:
【问题讨论】:
-
for cycle你的意思是 for 循环? -
@Ælex 是的,我会编辑
-
response.Search.length不起作用? -
你要数
Search的数量?
标签: javascript arrays json
【问题讨论】:
for cycle 你的意思是 for 循环?
response.Search.length 不起作用?
Search的数量?
标签: javascript arrays json
在这种情况下,首先您需要JSON.parse 数据(字符串):
var data = JSON.parse(string);
获取项目数为:
data.length;
你可以对文件做同样的事情(假设是 node.js):
require('fs').readFile(JSON.parse(file), 'utf8', function (err, data
{
if (err) throw err;
// your data is now parsed
});
然后你迭代使用你感兴趣的数组:
for (var prop in data)
{
// do something with item
var item = data[prop];
}
现在的迭代不需要数组长度的先验知识:
for (var i = 0; i < data.length; ++i)
该 JSON 似乎有一个 Search 对象数组(请自行查看:http://json.parser.online.fr/)
【讨论】:
for each吗?
for...of,它是 ES6 的一部分(并且很好用)。您不应该建议已弃用的内容。
item 不是属性名称,而 data[item] 将是值。
response.Search.map(function(obj){
//loop here
});
而不是使用for loop
【讨论】:
.map 不用于循环。请改用.forEach。
.map 函数不是 jquery 函数,因此它是一个原始的 javascript 函数.. 抱歉 @FelixKling :3 。还研究了 .map 与 forEach 之间的区别,但我仍然不明白为什么 .map 不能用于循环 xD