繁体   English   中英

如何计算一个JavaScript数组并获得这样的输出?

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

我有这样的数组

["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)
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM