javascript - 连续数字的总和JavaScript

标签 javascript logic

给定一个整数数组。

例如:

[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/

相关文章:

javascript - 从自定义绑定(bind)处理程序中更改另一个绑定(bind)

javascript - Web 套接字的 PHP 最小工作示例

java - 在抽出每张牌之前检查我的牌组时出现奇怪的输出

php - Moodle 登录页面更改

javascript - 无法从 REACT 中的 JSON 调用访问单个对象中的嵌套对象属性

javascript - 如何将 JS 对象文字名称值对传递给另一个函数

powershell - 确定 Powershell 命令是否成功

java - 尝试提示我的数组输入 10 个数字来执行模式

javascript - 在 Bootstrap 3 中记住页面刷新时的多个事件选项卡

mysql - 我应该如何处理游戏的纸牌分配?