Javascript 合并重复行并求和值

Javascript 合并重复行并求和值,javascript,arrays,merge,duplicates,Javascript,Arrays,Merge,Duplicates,我有以下数组,它们已经排序: day=[5,5,5,6,6,6,6,7,7,8,8]; 时间=[0,0,0,0,1.03,0.28,0,0,0,0,0.63,5.58,1]; 类别=[,,b,b,c,b,c]; 我想消除day数组中的重复值,并在time数组中添加相应的值,但仅适用于相应的类,如果类为空,则为零,如下所示: day_fix=[5,6,7,8]; b类=[0,1.31,0,5.58]; c类=[0,0,0,1.63]; 谢谢。我认为以下内容可能会对您有所帮助: const d

我有以下数组,它们已经排序:

day=[5,5,5,6,6,6,6,7,7,8,8];
时间=[0,0,0,0,1.03,0.28,0,0,0,0,0.63,5.58,1];
类别=[,,b,b,c,b,c];
我想消除day数组中的重复值,并在time数组中添加相应的值,但仅适用于相应的类,如果类为空,则为零,如下所示:

day_fix=[5,6,7,8];
b类=[0,1.31,0,5.58];
c类=[0,0,0,1.63];

谢谢。

我认为以下内容可能会对您有所帮助:

const day=[5,5,5,6,6,6,7,7,8,8]
常数时间=[0,0,0,0,0,1.03,0.28,0,0,0,0.63,5.58,1]
常量clazz=[,,,'b','b','c','b','c']
const resultDays={}
day.forEach((d,i)=>{
resultDays[d]=resultDays[d]| |{
if(clazz[i]){
结果日期[d][clazz[i]=(结果日期[d][clazz[i]]| | 0)+时间[i]
}
})

console.log(resultDays)
如果您自己尝试编写一些代码并将其与您的问题一起发布,您可能会得到更多帮助。谢谢,这对我帮助很大。我是一个使用javascript的新手,我对对象不太了解,但我会尝试将其转换为数组,这样我就更容易继续运行代码了。真的太谢谢你了!