我从一个网站获得了100个对象(JSON),就像这样构建。
"object" : [{
"id": 12243,
"name": 'Carl',
"text": 'subheader',
"tags": ["cars","child", "blue"],
...
},
{
"id": 12245,
"name": 'Dark',
"text": 'subheader',
"tags": ["cars"],
...
}
...
]
我想只获得标签 child 的标签。我该怎么办?
答案 0 :(得分:3)
您可以尝试这样的事情:
var objectsWithChild = json.object.filter(function(o){
return o.tags.includes("child");
});
其中json
是你的json字符串。
答案 1 :(得分:0)
var objs = [{
"id": 12243,
"name": 'Carl',
"text": 'subheader',
"tags": ["cars","child", "blue"]
},
{
"id": 12245,
"name": 'Dark',
"text": 'subheader',
"tags": ["cars"]
}]
var objsWithTags = objs.filter(obj => obj.tags.indexOf('child') > -1);
console.log(objsWithTags);

答案 2 :(得分:0)
克里斯托斯有一种更清洁的方式来做这件事,但这种方式对于初学者来说可能更清楚。一种方法是使用嵌套for循环。
var myObjects = []
for (var i = 0; i < data.object.length; i++) {
var ob = data.object[i];
for (var j = 0; j < ob.tags.length; j++) {
if (ob.tags[i] === "child") {
myObjects.push(ob);
}
}
}
答案 3 :(得分:0)
可能有多种方法可以实现这一点。 但主要观点大致相同。 在这里以文字形式: