首页 > 解决方案 > 如果在 arrayB 中找不到对象,则删除 arrayA 中的对象 - Javascript

问题描述

为我的小项目寻找一些建议。

例如,我有这两个数组

selectedItems = ['a', 'b', 'c', 'd', 'z']
availableItems = ['a', 'c', 'x', 'z']

我想要实现的是将我的selectedItems数组与我的availableItems数组进行比较。如果在 中selectedItems找不到项目availableItems,则将其从中删除selectedItems

结果:

selectedItems = ['a' 'c', 'z']
availableItems = ['a', 'c', 'x', 'z']

我知道我可以通过几个 for 循环轻松实现这一点,但是我想知道是否有更好的方法来使用 Javascript 做到这一点

标签: javascriptarrays

解决方案


您也可以使用 ES6过滤器来执行此操作。

selectedItems = ['a', 'b', 'c', 'd', 'z']
availableItems = ['a', 'c', 'z']

const result = selectedItems.filter(item => availableItems.includes(item));

console.log(result)


推荐阅读