我有一个数组如下
var arr = ["john doe first", "robert way", "jason doe", "alex"];
Run Code Online (Sandbox Code Playgroud)
现在我想转换这个数组,如下所示.
var result = ["john", "doe", "first", "robert", "way", "jason",
"doe", "alex"];
Run Code Online (Sandbox Code Playgroud)
快速解释是我需要将字符串的每个数组元素转换为数组并将其重置为数组.数组索引并不重要.我试图arr.split( " ")甚至arr.toString(),然后arr.split("").我不知道我在这里缺少什么.
Zen*_*noo 12
你可以简单地使用Array#join和String#split:
var arr = ["john doe first", "robert way", "jason doe", "alex"];
console.log(arr.join(' ').split(' '));Run Code Online (Sandbox Code Playgroud)
如果您的字符串有多个空格分隔您的单词:
单击添加.filter(Boolean)以删除空字符串
var arr = ["john doe first", "robert way", "jason doe", "alex"];
console.log(arr.join(' ').split(' ').filter(Boolean));Run Code Online (Sandbox Code Playgroud)
使用reduce,concat和split
arr.reduce( (a , c) => a.concat(c.split(/\s+/)), [])
Run Code Online (Sandbox Code Playgroud)
演示
var output = ["john doe first", "robert way", "jason doe", "alex"].reduce( (a , c) => a.concat(c.split(/\s+/)), []);
console.log( output );Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
477 次 |
| 最近记录: |