Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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或Jquery处理问题的提示_Javascript_Jquery_Arrays - Fatal编程技术网

使用Javascript或Jquery处理问题的提示

使用Javascript或Jquery处理问题的提示,javascript,jquery,arrays,Javascript,Jquery,Arrays,所以,我有两个数组显示在一个图中。我正在使用chart.js。 对于Y,我使用卷数组,对于X,使用日期。 数组的索引对应于值​​在另一个数组中使用相同的索引,例如: var daysToDisplay = [12-01-2021, 13-01-2021, 14-01-2021] 和volume=[1,2,3] 然后卷“1”对应第一个日期,依此类推 但是,有时日期会重复(这不应该发生在我的图表上)。 我需要的是:使相同的日期成为一个,并将这些天的所有卷添加到与日期相同的索引中 我将举一个例子,使

所以,我有两个数组显示在一个图中。我正在使用chart.js。 对于Y,我使用卷数组,对于X,使用日期。 数组的索引对应于值​​在另一个数组中使用相同的索引,例如:

var daysToDisplay = [12-01-2021, 13-01-2021, 14-01-2021]
volume=[1,2,3]

然后卷“1”对应第一个日期,依此类推

但是,有时日期会重复(这不应该发生在我的图表上)。 我需要的是:使相同的日期成为一个,并将这些天的所有卷添加到与日期相同的索引中

我将举一个例子,使其更易于查看

daysToDisplay = [12-01-2021, 13-01-2021, 13-01-2021, 13-01-2021, 14-01-2021]

volumes = [1,2,3,4,5]
成为:

daysToDisplay = [12-01-2021, 13-01-2021 ,14-01-2021]

volumes = [1,9,5]

有人能给我一个关于如何继续的提示吗?

你可以将日期映射到一个包含相关(按索引)卷的成对数组中。一旦有了这些对,就可以将它们缩减为一个具有键(日期)和每个分组的卷的累积值的对象。现在,您可以将对象转换为条目,并将它们转换为两个列表(键和值)

const
transpose=arr=>arr[0].map((列,列)=>arr.map(行=>行[col]),
日期=['12-01-2021','13-01-2021','13-01-2021','13-01-2021','14-01-2021'],
卷=[1,2,3,4,5],
[days,vols]=转置(Object.entries)(日期
.map((日期,索引)=>[日期,卷[索引])
.reduce((acc,[date,vol])=>(acc,[date]:(acc,[date]| 0)+vol}),{});
console.log(JSON.stringify(days));//["12-01-2021","13-01-2021","14-01-2021"]
console.log(JSON.stringify(vols));//[1,9,5]

。作为控制台包装{top:0;最大高度:100%!important;}
1-13=
13-01
?我的错误,Polywhill先生,已经编辑过了。我不会想到的。谢谢你的提示,Polywhill先生,我将尝试在我的代码中实现它。