JavaScript 字符串转换

标签 javascript arrays string object

<分区>

我有一个数组

var arr = ["2:6", "2:3", "1:1", "1:2", "3:1"];

(这是javascript); 我不知道如何将这个数组转换成输出:

["2:6,3", "1:1,2", "3:1"];

你能帮帮我吗?

最佳答案

您似乎想将列表中具有相同初始数字的元素组合在一起。此代码将为您提供关联数组 {"1":"1,2","2":"6,3","3§:"1"} 作为输出:

   var arr = ["2:6", "2:3", "1:1", "1:2", "3:1"];
   var hist = {};
   arr.map( function (a) { b=a.split(":");c=b[0]; if (c in hist) hist[c]=hist[c].concat(","+b[1]); else hist[c] = b[1]; } );
   alert(JSON.stringify(hist));

另见 JavaScript Group By Array

关于JavaScript 字符串转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20990777/

相关文章:

javascript - 一次合并两个 Javascript 数组三个元素

javascript - 数据表:过滤后禁用列大小调整

android - 位置已打开,但监听器未返回任何内容

javascript - Protractor 同步 - 超时

ios - Swift 3 - 没有 'sort' 候选人产生预期的上下文结果类型 'NSMutableArray'

javascript - 从字符串 JavaScript 中删除所有空格

c++ - basic_string.h 中的_GLIBCXX_FULLY_DYNAMIC_STRING

swift - 无法将类型 'Range<String.Index>' 的值转换为预期的参数类型 'UITextRange'

javascript - $regex 匹配模式在 MongoDB 与 Javascript 中具有不同的结果

javascript - NestJS createParamDecorator 返回未定义