javascript - 如何添加具有不同元素的数组并使用javascript添加重复元素值
问题描述
我有一个包含值的数组
myarray=["Mark:40", "John:20", "Sofia: 60", "Mark:30"]
desiredArray=["Mark:70", "John:20", "Sofia: 60"]
它应该检查名称是否唯一,如果多次找到相同的名称,它应该添加标记并使用不同的元素制作所需的数组。我能够获得唯一的数组,但无法合并标记。有人可以帮忙吗?
解决方案
您可以使用 aMap
来收集值并为结果呈现新字符串。
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);
推荐阅读
- java - 特定模式作为模运算符的输出
- ajax - jquery 自动完成现在工作正常
- oauth-2.0 - 为授权重定向 URI 添加 http://192.168.64.2:8000 域
- python - 有没有办法阻止“unicode escape”错误无法解码字节
- python-3.x - 出现错误 {"detail":"Method \"GET\" not allowed."}
- c - 我想在 UNIX 中制作复制功能文件
- go - 如何在 Golang 中修复“net/http set header ORIGIN”
- sql-server - 如果表中不存在当前记录,如何获取上一个记录
- c# - for循环中的单个分号是什么意思?
- javascript - 表单按钮链接和js按钮链接有什么区别?