const fruits = [{id: '1', name: 'Apple'},
{id: '2', name: 'Orange'},
{id: '3', name: 'Cherry'}];
const food=[{id: '1', food_name: 'Orange', deleted:"0"},
{id: '2', food_name: 'Bread' ,deleted:"0"},
{id: '3', food_name: 'Cheese', deleted:"0"},
{id: '4', food_name: 'Apple', deleted:"1"},
{id: '5', food_name: 'Salt',deleted:"0"}
]
//Code that I tried:
var dep_data = [];
var depSet = new Set(dep_log.map(item => item.department_id));
console.log(dep_log[0].deleted);
for(var j=0; j < departments.length; j++){
if(!depSet.has(departments[j].id) && departments[j].deleted!=='1'){
dep_data.push({id: departments[j].id, name: departments[j].name});
}
}
console.log(dep_data)
我想在两个数组之间进行比较,以获取食物中不存在的水果的ID和名称,并删除不等于1,然后将结果保存在新数组中。
例如这里我们有橙子存在于food数组中,结果应该存储不存在于food中并被删除的水果的id和名称!=1.(苹果,樱桃)。
2条答案
按热度按时间aiazj4mn1#
您提供的代码几乎是正确的。只是在比较被删除的属性时有一个小错误。而不是将其与字符串“1”进行比较,您应该将其与数字1进行比较。下面是正确的代码:
输出将是:
这意味着水果“Apple”和“Cherry”不存在于food数组中,并且已删除不等于1,因此它们存储在dep_data数组中。
kqlmhetl2#
你的代码有语法错误,下面是更新的代码:
结果将返回包含
cherry
的数组对象