javascript - 如何用字符串数组过滤对象数组
问题描述
假设我有一个对象数组 arr1
arr1 = [{name: "name1",id: 1},{name: "name2",id: 1},{name: "name3",id: 4},{name: "name3",id: 3},{name: "name1",id: 5}]
我想用数组过滤它arr2 =["name1","name3"]
我尝试使用filter然后.some。但没有得到正确的数据。
必需的arr3 = [{name: "name1",id: 1},{name: "name3",id: 4},{name: "name3",id: 3},{name: "name1",id: 5}]
解决方案
尝试这个:
const res = arr1.filter(item => arr2.includes(item.name));
推荐阅读
- cypress - 赛普拉斯如何存储输入数据并解析以进行验证
- python - OGB 数据集,我无法从“ogb.nodeproppred”导入“PygNodePropPredDataset”
- python - Vscode 使用 jedi + pyright 时两次显示函数文档字符串
- visual-studio-code - 如何配置 VS Code 扩展,以便启用或禁用它们。取决于打开的工作区?
- angular - Angular:如何在 Typescript 中访问 HTML 标签类
- javascript - 拆分功能不适用于提供的正则表达式
- python - 通过一个 django 表单字段搜索多个单词
- unity3d - Unity:如何使滚动矩形适合其内容的最大高度?
- uwp - 为什么在尝试从文件夹中获取文件时应用程序停止工作?
- android-studio - Android Studio:无法实例化以下类:- androidx.constraintlayout.widget.ConstraintLayout