如何在json中循环并获得特定值
How to loop through json and get a specific value?
我可能会将json作为单个或多个数据源,我需要对其进行解析以获得特定的值。
如何获取一个特定的值,然后将其放入一个字符串中,并比较这些值以获得下面表示的单个字符串。
var info;
info= {
"rows": [
{
"id": 1,
"data": [ "", "1", "s", "Al", "A" ]
}
]
};
info= {
"rows": [
{
"id": 1,
"data": [ "", "1", "s", "Al", "A" ]
},
{
"id": 2,
"data": [ "", "1", "s", "Az", "A" ]
},
{
"id": 3,
"data": [ "", "2", "s", "Co", "A" ]
}
]
};
var jsonData;
我不知道如何在json中循环并提取数据[1],然后将每个值放入字符串中,例如:1,1,2。
var jstring = jsonData
这是我要放入字符串中的每个项目的对应项。
$.each([ jstring ], function( index, value ) {
if(g.includes(string)) {
console.log(value + " exists");
}
else
{
g = g + value;
}
});
我想要的是g看起来像:1,2
任何帮助都将不胜感激。
这样的东西怎么样:
var outputString = info.rows.reduce(function(arr, row){
return arr.concat(row.data[1]);
}, []).join(",");
以下是一些关于reduce如何工作的文档的链接:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
基本上,行是一个数组,因此reduce将向该数组中的每个项应用一个函数,并使用所谓的累加器"跟踪"输出。在这种情况下,我们的累加器是arr变量。对于行数组中的每个项,我们将该值连接到累积的数组中,然后将该值传递给下一次迭代。我们传递空括号作为第二个参数,以减少为初始值,这意味着我们希望从一个空数组开始。一旦reduce完成运行,我们就剩下一个数组,在这种情况下,它看起来像[1,1,2]。这时,我们可以使用.join(",")将新数组中的每个项连接成一个字符串,用逗号分隔。
相关文章:
- 在 ajax 成功和循环 json 数组时检索 json 数组
- jQuery 循环 JSON 结果,对象作为值
- 在对象中循环json对象
- 如何循环json数组以获取javascript中的键和值
- 在Morris.js和Laravel 5中循环JSON数据
- 聚合物:渲染循环 JSON
- 如何字符串化循环 JSON 对象并将其保存到文件
- 使用正则表达式循环 Json 数据
- 使用 ajax 和 jQuery 循环 JSON 提要
- 如何循环JSON响应并插入到不同的元素中
- 如何在对象数组中循环Json结果对象
- 访问循环JSON结构
- JavaScript循环Json日期
- 动态循环JSON,并在设置间隔后显示和隐藏对象元素
- PHP循环JSON ajax成功
- jQuery和JSON:循环JSON数组
- 如何让jquery循环json数据结果,以创建一个两列表
- 使用javascript/jquery循环json对象
- ajax成功后循环JSON响应
- 如何构建数组("键":值)在js与循环json ajax