如何计算javascript数组并获得这样的输出

How to count a javascript array and get output like this?

本文关键字:输出 数组 何计算 计算 javascript      更新时间:2023-09-26

我有一个像这样的数组

["5763.34", "5500.00", "5541.67", "5541.67"]

我想计数类似的值,并得到一个输出,如

(1 * 5763.34) + (1 * 5500.00) + (2 * 5541.67)

你知道怎么做吗?

计数:

var array = ["5763.34", "5500.00", "5541.67", "5541.67"]
var counts = {};
for (var i = 0; i < array.length; ++i) {
    var val = array[i];
    if (val in counts) {
        counts[val]++;
    } else {
        counts[val] = 1;
    }
}

打印:

var strings = [];
for (var k in counts) {
    strings.push('(' + counts[k] + ' * ' + k + ')');
}
alert(strings.join(' + '));

试试:http://jsfiddle.net/k46kL/1

这样做

sum = 0
for(i=0; i< array.length; i++){
    sum += array[i] * (i+1)
 }