【发布时间】:2020-12-11 05:31:26
【问题描述】:
我正在尝试用数组值过滤一个数组对象,这里是代码:
const array1 = [{
"packaging": "Box",
"price": "100"
}, {
"packaging": "Pcs",
"price": "15",
}, {
"packaging": "Item",
"price": "2",
}];
const b = ['Pcs','Item']
const found = array1.filter(el => {
for(i = 0; i < b.length; i++) {
return el.packaging !== b[i];
}
});
console.log(found);
我的预期输出是数组,其中 b 中不存在对象 [{包装:“盒”,价格:“100”}]
【问题讨论】:
-
您的嵌套 for 循环是不必要的,
.filter已经在元素上循环。按照下面的答案做,然后立即返回所需的条件(使用.includes)
标签: javascript ecmascript-6 ecmascript-5