Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 循环遍历对象数组,检查匹配参数并将匹配对象添加到新数组中_Javascript_Arrays_Reactjs_Lodash - Fatal编程技术网

Javascript 循环遍历对象数组,检查匹配参数并将匹配对象添加到新数组中

Javascript 循环遍历对象数组,检查匹配参数并将匹配对象添加到新数组中,javascript,arrays,reactjs,lodash,Javascript,Arrays,Reactjs,Lodash,我是JS的新手,我有点被困在这里。我已经搜索了这么多,但我很难找到一个解释有效的解决方案 这是我的数组 第一个数组非常简单 [1, 3, 4,] 第二个看起来像这样 [ { id: 1, title: Title 1, }, { id: 2, title: Title 2, }, ] 我要做的是搜索第二个数组,如果我能找到与第一个数组中的值匹配的id,那么将第二个数组中的对象添加到第三个新数组中 我已经尝试了很多方法,我确信有一种相对简单的

我是JS的新手,我有点被困在这里。我已经搜索了这么多,但我很难找到一个解释有效的解决方案

这是我的数组

第一个数组非常简单

[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)
我尝试了很多东西
请发布你尝试过的东西。
我尝试了很多东西
请发布你尝试过的东西。完美!谢谢你继续教育我!完美的谢谢你继续教育我!