如何在JavaScript中将字符串转换为字符数组?
我在考虑获取一个字符串,比如"Hello world!"到数组 [' H ', ' e ', ' l ', ' l ', ' o ', ' ', ' w ', ' o ', ' r ', ' l ', ' d ', ' !']
如何在JavaScript中将字符串转换为字符数组?
我在考虑获取一个字符串,比如"Hello world!"到数组 [' H ', ' e ', ' l ', ' l ', ' o ', ' ', ' w ', ' o ', ' r ', ' l ', ' d ', ' !']
当前回答
你可以遍历字符串的长度,并将字符推到每个位置:
const str = 'Hello World'; const stringToArray = (text) => { Var chars = []; For (var I = 0;I < text.length;我+ +){ [我]chars.push(文本); } 返回字符 } console.log (stringToArray (str))
其他回答
你也可以使用Array.from。
var m = "Hello world!"; console.log (Array.from (m))
这个方法已经在ES6中引入。
参考
Array.from
Array.prototype.slice也会做同样的工作。
const result = Array.prototype.slice。调用(“Hello world !”); console.log(结果);
ES6将字符串按字符分割为数组的方法是使用展开操作符。它既简单又漂亮。
array = [...myString];
例子:
让myString = "Hello world!" array =[…myString]; console.log(数组); //另一个例子: console.log([…“另一个分割文本”]);
这是一个老问题,但我遇到了另一个尚未列出的解决方案。
你可以使用对象。指定函数以获得所需的输出:
var output =对象。assign([], "Hello, world!"); console.log(输出); / / [' H ', ' e ', ' l ', ' l ', ' o ', ',', ' ', ' w”、“o”、“r”、“l”、“d”、“!']
不一定是对与错,只是另一种选择。
对象。分配在MDN站点上描述得很好。
在JavaScript中转换字符串为字符数组的4种方法:
const string = 'word';
// Option 1
string.split(''); // ['w', 'o', 'r', 'd']
// Option 2
[...string]; // ['w', 'o', 'r', 'd']
// Option 3
Array.from(string); // ['w', 'o', 'r', 'd']
// Option 4
Object.assign([], string); // ['w', 'o', 'r', 'd']