javascript - 如何添加具有不同元素的数组并使用javascript添加重复元素值

标签 javascript jquery sharepoint sharepoint-online

我有一个包含值的数组

myarray=["Mark:40", "John:20", "Sofia: 60", "Mark:30"]

desiredArray=["Mark:70", "John:20", "Sofia: 60"]

它应该检查名称是否唯一,如果多次发现相同的名称,它应该添加标记并使所需的数组具有不同的元素。我能够获得独特的数组但无法合并标记。谁能帮忙?

最佳答案

你可以拿一个Map用于收集值并为结果呈现新字符串。

var array = ["Mark:40", "John:20", "Sofia: 60", "Mark:30"],
    result = Array.from(
        array.reduce(
            (m, s) => (([k, v]) => m.set(k, (m.get(k) || 0) + +v))(s.split(/:\s*/)),
            new Map
        ).entries(),
        a => a.join(':')
    );

console.log(result);

关于javascript - 如何添加具有不同元素的数组并使用javascript添加重复元素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50675981/

相关文章:

javascript - 在 JavaScript 的 foreach 循环中捕获 PHP var,并在其他 PHP 页面中使用它。

javascript - 重定向奇怪格式的 url

javascript - Jquery/Ajax Done 事件仅运行一次

ListItems 的权限已更改时的 SharePoint 事件?

SharePointOnlineCredentials 引发 ComException

php - 如何使 .php 文件在 microsoft sharepoint 中工作?

javascript - 带有 jQ​​uery slideToggle 回调的 google map api

javascript - ng-app 或 angular.bootstrap

jquery - 为什么我的 jQuery AJAX 在任何按钮上触发而不仅仅是提交?

javascript - TypeError : jasmine. createSpy(...).andCallFake 不是函数