Javascript:检查另一个数组中的项目状态

时间:2017-10-13 16:54:20

标签: javascript angular

我有两个数组,数组“A”有一个名为“deleted”的列和一个名为“rcCode”的列。数组“B”只有列“cegCode”,与数组A中的“rcCode”匹配。

我想根据数组A中的信息检查数组B中的项是否被删除。

dispatch_async(dispatch_get_main_queue(), ^{...})

简而言之,需要检查“B”中的每个项目是否在“A”中都有删除状态

1 个答案:

答案 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);