
获取指定集合
问题:
如何从 json 数据中获取特定集合,例如 status 为 0 的集合 { "id": 1, "name": "alice",age:[
{id:4,status:0}
] }?
回答:
为了获取不同 status 的集合,可以使用 javascript 的 filter 方法进行筛选。
获取指定 status 的集合
要获取特定 status 的集合,例如 status 为 0,可以使用以下代码:
const data = [
{ "id": 1, "name": "alice", age: [{ id: 4, status: 0 }] },
{ "id": 2, "name": "bob", age: [{ id: 4, status: 1 }] },
{ "id": 3, "name": "charlie", age: [{ id: 4, status: 1 }] }
];
const status0 = data.filter(item => item.age.some(a => a.status === 0));
console.log(status0);更复杂的场景
如果需要筛选包含特定 status 的 age 元素,可以使用以下方法:
// 获取包含 status 为 0 的 age 元素的集合
const status0 = data.map(item => ({
...item,
age: item.age.filter(a => a.status === 0)
})).filter(item => item.age.length > 0);
console.log(status0);
// 获取包含 status 为 1 的 age 元素的集合
const status1 = data.map(item => ({
...item,
age: item.age.filter(a => a.status === 1)
})).filter(item => item.age.length > 0);
console.log(status1);这种方法可以确保只返回 age 中包含特定 status 的元素。










