Javascript 循环遍历对象数组,检查匹配参数并将匹配对象添加到新数组中
我是JS的新手,我有点被困在这里。我已经搜索了这么多,但我很难找到一个解释有效的解决方案 这是我的数组 第一个数组非常简单Javascript 循环遍历对象数组,检查匹配参数并将匹配对象添加到新数组中,javascript,arrays,reactjs,lodash,Javascript,Arrays,Reactjs,Lodash,我是JS的新手,我有点被困在这里。我已经搜索了这么多,但我很难找到一个解释有效的解决方案 这是我的数组 第一个数组非常简单 [1, 3, 4,] 第二个看起来像这样 [ { id: 1, title: Title 1, }, { id: 2, title: Title 2, }, ] 我要做的是搜索第二个数组,如果我能找到与第一个数组中的值匹配的id,那么将第二个数组中的对象添加到第三个新数组中 我已经尝试了很多方法,我确信有一种相对简单的
[1, 3, 4,]
第二个看起来像这样
[
{
id: 1,
title: Title 1,
},
{
id: 2,
title: Title 2,
},
]
我要做的是搜索第二个数组,如果我能找到与第一个数组中的值匹配的id,那么将第二个数组中的对象添加到第三个新数组中
我已经尝试了很多方法,我确信有一种相对简单的方法可以通过forEach循环或lodash来实现这一点,但我还是一无所获
任何帮助和解释都将不胜感激
谢谢,您的第二个数组无效。必须用引号将字符串值括起来 你可以用 filter()方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素 及 includes()方法确定数组是否包含某个元素,并根据需要返回true或false 请尝试以下方法:
var arr1=[1,3,4,4];
var arr2=[
{
id:1,
标题:“标题1”,
},
{
id:2,
标题:“标题2”,
},
];
var res=arr2.filter(i=>arr1.includes(i.id));
控制台日志(res)代码>您的第二个数组无效。必须用引号将字符串值括起来
你可以用
filter()方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素
及
includes()方法确定数组是否包含某个元素,并根据需要返回true或false
请尝试以下方法:
var arr1=[1,3,4,4];
var arr2=[
{
id:1,
标题:“标题1”,
},
{
id:2,
标题:“标题2”,
},
];
var res=arr2.filter(i=>arr1.includes(i.id));
控制台日志(res)
我尝试了很多东西
请发布你尝试过的东西。我尝试了很多东西
请发布你尝试过的东西。完美!谢谢你继续教育我!完美的谢谢你继续教育我!