【发布时间】:2018-01-26 17:12:14
【问题描述】:
我正在做一个 react 项目,我需要在不改变原始数组的情况下过滤对象数组
const array = [{
name: 'bar',
children: [{
name: 'foo',
children: [{
name: 'baz123',
}, {
name: 'baz',
}]
}]
}, {
name: 'shallowKey'
}, {
name: 'abc'
}];
例如,我只想过滤相关对象及其子对象。
这是jsfiddle
function filterData(data) {
var r = data.filter(function(o) {
if (o.children) o.children = filterData(o.children);
return o.name.length === 3;
})
return r;
}
我从 stackoverflow 问题中尝试了该功能,但有没有办法在不改变数据的情况下使用相同的功能。谢谢
【问题讨论】:
标签: javascript arrays reactjs