要按照JSON中子数组的元素进行过滤,可以使用JavaScript的Array的filter()方法进行处理。下面是一个示例代码:
const jsonData = {
"data": [
{ "id": 1, "name": "John", "hobbies": ["running", "swimming"] },
{ "id": 2, "name": "Jane", "hobbies": ["reading", "painting"] },
{ "id": 3, "name": "Mark", "hobbies": ["running", "cooking"] }
]
};
// 过滤出包含"running"爱好的对象
const filteredData = jsonData.data.filter(item => item.hobbies.includes("running"));
console.log(filteredData);
输出结果为:
[
{ "id": 1, "name": "John", "hobbies": ["running", "swimming"] },
{ "id": 3, "name": "Mark", "hobbies": ["running", "cooking"] }
]
在上面的示例中,我们使用jsonData.data.filter()
方法来过滤出包含"running"爱好的对象。filter()方法会返回一个新的数组,其中包含满足过滤条件的元素。在filter()方法的回调函数中,我们使用了item.hobbies.includes("running")
来判断当前元素的"hobbies"属性是否包含"running",如果包含,则返回true,表示该元素应该被保留在过滤后的数组中。