我有两个数组,数组“A”有一个名为“deleted”的列和一个名为“rcCode”的列。数组“B”只有列“cegCode”,与数组A中的“rcCode”匹配。
我想根据数组A中的信息检查数组B中的项是否被删除。
dispatch_async(dispatch_get_main_queue(), ^{...})
简而言之,需要检查“B”中的每个项目是否在“A”中都有删除状态
答案 0 :(得分:0)
试试这个解决方案。首先使用Array#filter根据数组A
检查数组B
中包含哪些项目。然后,当您获得适当的数据时,使用Array#every检查条件是否为真的所有项目 - deleted === 1
。
const A = [
{"rcCode":"ABC", "deleted":"1"},
{"rcCode":"DEF", "deleted":"0"},
{"rcCode":"GHI", "deleted":"1"},
{"rcCode":"JKL", "deleted":"0"}
];
const B = [
{"cegCode":"DEF"},
{"cegCode":"GHI"}
];
const result = A.filter(item => B.some(i => item.rcCode === i.cegCode))
.every(item => item.deleted === 1);
console.log(result);