在Javascript中遍历JSON数组元素
Loop through JSON array element in Javascript
我有一个JSON结构,如:
{
listOfVal: [
val1,
val2,
val3
]
name: "app"
id: "9209629"
}
我想检查listOfVal
是否有val2
。val2
可以在任何指标上。
这个JSON是对API调用的响应的一部分,我使用:
var data = JSON.parse(responseBody);
首先,您的JSON无效。你缺少逗号和引号。
{
"listOfVal": [
val1,
val2,
val3
],
"name": "app",
"id": "9209629",
...
}
一旦你有了data
,用for
循环遍历它。你可以使用indexOf
,但这不能在IE < 9
function isInJSON(data, value){
for(var i=0; i<data.listOfVal.length; i++){
if(data.listOfVal[i] === value){
return true;
}
}
return false;
}
如果你的val
是数组或对象,这并不总是有效。如果是,您可以运行for
循环来比较它们,或者您可以使用underscore.js
: _.isEqual(obj1,obj2)
。
请求使用forEach
:
var value; //define what you're looking for
data.listOfVal.forEach(function(val,key){
if(val === value){
alert('MATCH FOUND: responseBody["' + String(key) + '"] = ' + String(value));
}
});
如果使用JSON。解析你有这样一个对象:
data = {
listOfVal: [
val1,
val2,
val3
],
name: 'app',
id: '9209629'
...
}
然后你可以像访问其他对象一样访问listOfVal,并使用indexOf来访问val2。
data.listOfVal.indexOf(val2);
这将返回一个非负整数索引,其中val2位于数组中,或者它将返回-1,表明val2不存在于您的数组中。
相关文章:
- 访问JSON对象内部的数组元素
- 使用Underscore.js修改json数组中所选元素的更有效方法
- 从json数组中查找满足条件的特定元素的值
- 在JSON数组中进行迭代,并为其元素设置样式
- 将内容从 JSON 数组附加到 li 元素
- 如何在JSON中加载对象内部的数组元素
- JSON数组元素作为单个数组
- 当接收不同的数组元素时,数组中的JSON对象相同
- 从JSON数组中删除元素
- 是否可以在不使用索引号的情况下访问 json 数组元素
- 访问json数组元素的动态方式
- 访问json数组元素
- 如何将json数组元素映射到下拉列表中选择的选项
- 如何动态显示json数组元素到选择标签
- 在Javascript中遍历JSON数组元素
- Json数组元素到html页面
- 我如何得到Json数组元素一个接一个的jquery上不同的id'
- 如何计算JSON数组元素的长度
- Javascript -通过键获取特定JSON数组元素中属性的值
- 使用变量选择JSON数组元素