javascript - 根据文本将字符串数组转换为数组或 JSON

标签 javascript jquery arrays json

在我的项目中,我陷入了这个任务。我有这样的字符串数组:

var tempArray = [];
tempArray[0]="key1 : value1";
tempArray[1]="key1 : value2";
tempArray[3]="key2 : value1";
tempArray[4]="key2 : value2";
tempArray[5]="key2 : value3";

现在我想要这样的结果:

   "key1":"value1","value2"
   "key2":"value1","value2","value3" 

您可以使用 JSON 或数组,我只想得到此格式的结果。

最佳答案

您可以使用Array.prototype.reduce()按照您喜欢的方式转换您的数组:

var output = tempArray.reduce(function(result, item) {
    var key = item.split(":")[0].trim();
    var value = item.split(":")[1].trim();
    if (result[key]) {
        result[key].push(value);
    } else {
        result[key] = [value];
    }
    return result;
}, {});

关于javascript - 根据文本将字符串数组转换为数组或 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34310217/

相关文章:

java - 我的新条件逻辑对于生命游戏规则正确吗? (区分出生和生活条件)

javascript - 单击动画 Glyphicon

javascript - skip_before_filter :authenticate_user! 不适用于 AJAX 调用

jquery - 有没有办法只使用 jQuery 来回滚动画?

javascript - 将百分比添加到向上计数的jquery

python - 查找最大值的递归函数返回 0

javascript - jquery中如何使用map函数?

javascript - 如何处理没有 id 的 iframe

javascript - 如何在早午餐中加载 Foundation 6 JS?

javascript - 单击外部时关闭元素 - 我在这里做错了什么?