简体   繁体   English

用定界符将数组拆分为字符串

[英]split array with delimiter into string

I have an array like below 我有一个像下面的array

["abc", "stued(!)rain(!)shane", "cricket"]

How can i convert this to string by spliting on (#) like below: 我如何通过分割(#)来将其转换为string ,如下所示:

"abc"
"stued"
"rain"
"shane"
"cricket"

Below is the code i have tried 以下是我尝试过的代码

var arr = ["abc", "stued(!)rain(!)shane", "cricket"];
console.log(arr.join('').split("(!)"));

I am getting abcstued,rain,shanecricket which is not the desired output 我得到了abcstued,rain,shanecricket ,这不是所需的output

Use join with the same delimiters. join与相同的分隔符一起使用。

 var arr = ["abc", "stued(!)rain(!)shane", "cricket"]; alert(arr.join('(!)').split("(!)")); 

This is missing, a solution with Array#reduce: 这是缺少的,使用Array#reduce的解决方案:

 var arr = ["abc", "stued(!)rain(!)shane", "cricket"], result = arr.reduce(function (r, a) { return r.concat(a.split('(!)')); }, []); document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>'); 

var arrFinal = [];

arr.forEach(function(val, key) {
        arrFinal = arrFinal.concat(val.split('(!)'))
    })


console.log(arrFinal)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM