我想将array的各个值相加(将所有数组的第一个值放在一起,将所有数组的第二个值放在一起,依此类推...)
我知道这个问题被问过很多次,但是我仍然找不到适合自己的答案
我正在尝试,但是它会将数组1中的所有值加起来,依此类推
var dataset = data.datasets[tooltipItem.datasetIndex];
//calculate the total of this data set
var total= dataset.data.reduce(function(previousValue, currentValue, currentIndex, array) {
return previousValue + currentValue;
});
//get the current items value
var currentValue = dataset.data[tooltipItem.index];
console.log(currentValue)
var percentage = (((currentValue/total) * 100)).toFixed(2);
console.log(total)
return percentage + "%";
}
答案 0 :(得分:0)
您可以映射所需的百分比值。
var dataset = [100, 200, 300],
total = dataset.reduce(function(a, b) {
return a + b;
}),
result = dataset.map(function (value) {
return (value * 100 / total).toFixed(2) + ' %';
});
console.log(result);
答案 1 :(得分:0)
(正如其他人在评论中指出的那样)并不能100%清楚您的期望,但是您已经说了
我想将array的各个值相加(将所有数组的第一个值放在一起,将所有数组的第二个值放在一起,依此类推...)
这是一个片段,它将采用长度为n
的{{1}}个数组,并返回一个长度为m
的数组,其中第m
个元素是所有i
个输入数组中第i
个元素的总和。
n