Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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_Loops_Object - Fatal编程技术网

Javascript 循环遍历多个数组对象值,并与另一个数组对象的正确值相匹配

Javascript 循环遍历多个数组对象值,并与另一个数组对象的正确值相匹配,javascript,loops,object,Javascript,Loops,Object,我的措辞不是很好,但当你看到我的代码时,你应该能够理解我所说的要点 我有一个对象,看起来像这样(在我下面尝试的解决方案中称为newObj): 键需要保留日期,因为它将在我的线图的x轴上运行 现在,我需要遍历上面的每个日期数组,并确定所述日期是否与下面对象中的picku date值匹配(object在下面尝试的解决方案中调用loads),然后将其添加到newObj: 0: {id: 167, pickup_date: "2020-05-21", pickup_location: "Sugar Cr

我的措辞不是很好,但当你看到我的代码时,你应该能够理解我所说的要点

我有一个
对象
,看起来像这样(在我下面尝试的解决方案中称为
newObj
):

键需要保留日期,因为它将在我的线图的x轴上运行

现在,我需要遍历上面的每个日期数组,并确定所述日期是否与下面对象中的
picku date
值匹配(
object
在下面尝试的解决方案中调用
loads
),然后将其添加到
newObj

0: {id: 167, pickup_date: "2020-05-21", pickup_location: "Sugar Creek, MO 64050, USA", rate: "1000.0", delivery_date: "2020-05-22", …}
1: {id: 768, pickup_date: "2020-05-19", pickup_location: "North Kansas City, MO 64116, USA", rate: "450.0", delivery_date: "2020-05-20", …}
2: {id: 809, pickup_date: "2020-05-20", pickup_location: "Wichita, KS 67219, USA", rate: "454.3", delivery_date: "2020-05-20", …}
3: {id: 984, pickup_date: "2020-05-19", pickup_location: "Fulton, MO 65251, USA", rate: "650.0", delivery_date: "2020-05-20", …}
4: {id: 1232, pickup_date: "2020-05-19", pickup_location: "Shawnee, KS 66219, USA", rate: "1209.62", delivery_date: "2020-05-19", …}
5: {id: 1317, pickup_date: "2020-05-20", pickup_location: "Shawnee, KS 66219, USA", rate: "1209.62", delivery_date: "2020-05-20", …}
6: {id: 1321, pickup_date: "2020-05-21", pickup_location: "Sugar Creek, MO 64058, USA", rate: "550.0", delivery_date: "2020-05-21", …}
7: {id: 1325, pickup_date: "2020-05-18", pickup_location: "Kansas City, MO 64120, USA", rate: "903.6", delivery_date: "2020-05-18", …}
8: {id: 1326, pickup_date: "2020-05-21", pickup_location: "Kansas City, MO 64120, USA", rate: "838.6", delivery_date: "2020-05-21", …}
9: {id: 1451, pickup_date: "2020-05-13", pickup_location: "Kansas City, MO 64127, USA", rate: "575.0", delivery_date: "2020-05-14", …}
基本上,初始的
对象包含一周的日期。我想从我的第二个
对象数组中找到所有日期,并将它们与正确的
键配对

我尝试了很多事情,结果有两个结果;我要么只获取
newObj
值中的最后一个元素,要么获取
newObj
值的
array
长度(这是正确的长度…即
数组中实际有多少个加载,但我无法访问它们)

这是我的密码:

for(property in newObj){
          newObj[property].forEach(function(date){
            loads.forEach(function(load){
              if (load.pickup_date === date){
                newObj[property] = arr.push(load)
              }
            })
          })
        }
        console.log(newObj)
这是具有正确数组长度的控制台;只是不是实际的负载

2020-05-03: 34
2020-05-10: 68
2020-05-17: 95

这些必须是某个虚拟数组的正确长度,但我不知道如何实际获取数据。

这就是你想要的吗

让finalRes={}
for(在newObj中的财产){
设arr=[]
newObj[property].forEach(函数(日期){
loads.forEach(函数(load){
如果(装载、捡拾_日期===日期){
arr.push(负载)
}
})
})
最终[财产]=arr
}

您似乎直接从控制台复制了代码,但这些行既不完整也不可行。你能修复你的代码并创建一个我们可以执行和查看的代码片段吗。请参见文本编辑器中的
图标以创建代码段。工作起来就像一个符咒!我也很接近:/。谢谢你的帮助!
2020-05-03: 34
2020-05-10: 68
2020-05-17: 95