我有一个数组a = [1,2,3,4,5]
和一个数组b = [1,3]
,其中包含a
的一些元素。所以它是一种a
的子数组。
在下面的for循环中,我可以使用b
的元素来实现#34;做些东西"。现在,我如何在同一循环中与不属于a
的{{1}}元素进行交互?这意味着来自b
的{{1}}?如何过滤掉它们?
2, 4 and 5
非常感谢"
答案 0 :(得分:4)
您可以使用filter()
功能与includes()
功能结合来过滤列表:
const diff = a.filter(i => !b.includes(i));
diff
将仅包含a
中不属于b
的元素。
这在阵列之间称为差异。还有很多库将包含某种diff
数组函数。
答案 1 :(得分:2)
您可以在filter
数组上使用a
来获取未包含的新元素列表:
a.filter(item => !b.includes(item)).forEach(function(item) {
console.log(item);
});
答案 2 :(得分:2)
您正在寻找:a.filter((element) => !b.includes(element))
const a = [1,2,3,4,5];
const b = [1,3]
const elements_in_a_not_in_b = a.filter((element) => !b.includes(element))
console.log(
elements_in_a_not_in_b
)