给定一个整数数组。
例如:
[1,2,2,2,5,7]
我想输出任何一组连续相同的数字及其总和。
输出应该是:
[1,6,5,7]
关于如何做到这一点有什么想法吗?
最佳答案
您可以使用 Array.prototype.reduce()
用一个临时对象。
var array = [1, 2, 2, 2, 5, 7],
result = array.reduce(function (r, a) {
if (r.last === a) {
r.array[r.array.length - 1] += a;
} else {
r.array.push(a);
r.last = a;
}
return r;
}, { array: [], last: null }).array;
document.write('<pre>' + JSON.stringify(result,0,4) + '</pre>');
关于javascript - 连续数字的总和JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35022333/