【发布时间】:2018-09-27 11:23:12
【问题描述】:
我有两个数组,我想比较并检查其中一个数组中是否有已删除的项目。如果有显示差异(已删除项目)
下面是我想要实现的代码:
var completedList = [{id:1},{id:2},{id:3},{id:4},{id:7},{id:8}];
var invalidList = [{id:3},{id:4},{id:5},{id:6}];
// filter the items from the invalid list, out of the complete list
var validList = completedList.map((item) => {
console.log(item.id)
return item.id;
//console.log(invalidList.id);
}).filter(item => {
Object.keys(invalidList).map(key => {
console.log(invalidList[key].id)
//return !invalidList[key].id.includes(item.id);
});
})
console.log(validList); // Print [1,2,7,8]
// get a Set of the distinct, valid items
var validItems = new Set(validList);
但这给我带来了很多id's 我如何映射数组并过滤对象属性ID?并且只显示这些数组对象之间的区别。
所以基本上我希望看到这些数组之间的差异,所以在这个例子中记录 id 的差异:1,2,5,6,7,8
【问题讨论】:
-
订单重要吗?请同时添加想要的结果。
-
所需解决方案的可接受复杂度是多少?
-
@NinaScholz 另一个问题不是重复的。经过一番思考,不是我想要实现的预期输出
-
你为什么把我的回答当成问题描述?
-
@Sireini 请看我的回答
标签: javascript ecmascript-6 ecmascript-5