我想创建一些东西来检查我的json数据中是否有值,然后检索他所属的组。
data = [{
"1" : ["1007","1020"],
"2" : ["1200","1493"],
"3" : ["6754","8652"],
}]
var value = '1200' #how to identify if 1200 is in group 2.
我不知道如何做到这一点。任何帮助都会有用!
答案 0 :(得分:1)
data = [{
"1" : ["1007","1020"],
"2" : ["1200","1493"],
"3" : ["6754","8652"],
}]
for (var i = 0; i < data.length; i++) {
for (var key in data[i])
{
if (data[i][key].indexOf('1200') !== -1){
console.log(key);
}
}
}
基本上,你循环遍历对象数组,然后循环遍历每个对象的键,以测试你的元素是否属于每个键的值。
答案 1 :(得分:0)
首先获取对象的所有键,然后按1200
进行过滤。最后将它转换为字符串。
for(var i = 0;i < data.length;++i) {
var group = Object.keys(data[i]).filter(function(key) {
return data[i][key].indexOf("1200") !== -1;
}).toString();
}
在ES6 / 7中你可以做得更顺畅:
Object.keys(data[i]).filter(key => data[i][key].includes("1200")).toString();