我得到了一个Array a = [1,2,3,4,5]
和一个Array b = [1,3]
,其中包含a
的一些元素。因此,它是a
的子数组的一种。
在下面的此for循环中,我可以使用b
的元素来“做某事”。现在,我如何在与a
无关的b
元素的同一循环中进行交互?那意味着2, 4 and 5
来自a
吗?如何过滤掉它们?
function action (){
for (var i=0; i<b.length; i++) {
b[i].x = "do something";
}
非常感谢”
最佳答案
您可以结合使用filter()
函数和includes()
函数来过滤列表:
const diff = a.filter(i => !b.includes(i));
diff
将只包含a
中不包含在b
中的元素。这称为阵列之间的差异。还有很多库将为数组提供某种
diff
函数。关于javascript - 如何从父阵列中滤除子阵列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45021499/