【发布时间】:2018-07-23 16:05:08
【问题描述】:
我正在尝试根据键/值组合从数组中删除对象 - 在我的例子中是删除所有“非活动”用户。
示例代码如下所示
var items = [
{ "userID":"694","active": false },
{ "userID":"754","active": true },
{ "userID":"755","active": true },
{ "userID":"760","active": false },
{ "userID":"761","active": false },
{ "userID":"762","active": false }
]
function removeByKey(array, params){
array.some(function(item, index) {
return (array[index][params.key] !== params.value) ? !!(array.splice(index, 1)) : false;
});
return array;
}
for (var i = 0; i < items.length; i++){
var removed = removeByKey(items, {
key: 'active',
value: true
});
}
console.log(removed);
但每次数组中的最后一个条目包含"active": false时,它不会被删除。
感谢任何帮助!
【问题讨论】:
标签: javascript arrays json