如何在javascript中拆分像梯子一样的字符串?

时间:2017-03-08 08:14:53

标签: javascript arrays string

我有一个字符串str:str2:str3,我希望获得包含下一个元素['str', 'str:str2', 'str:str2:str3']的字符串数组。

这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:1)

您可以将字符串拆分为':'并构建一个包含所需部分的新数组。

var SEPARATOR = ':',
    string = 'str:str2:str3',
    temp = string.split(SEPARATOR),
    result = temp.map(function (a, i, aa) {
        return aa.slice(0, i + 1).join(SEPARATOR);
    });

console.log(result);

答案 1 :(得分:0)

拆分字符串并通过基于索引切割拆分数组来生成元素。



console.log(
  'str:str2:str3'
  .split(':')
  .reduce(function(arr, v, i, spl) {
    arr.push(spl.slice(0, i + 1).join(':'));
    return arr;
  }, [])
);