Javascript 如何从字符串中获取字符数组?

Javascript 如何从字符串中获取字符数组?,javascript,arrays,string,Javascript,Arrays,String,如何在JavaScript中将字符串转换为字符数组 我正在考虑向数组中添加一个字符串,如“Hello world!” 注意:这不符合unicode“I 注意:这不符合unicode。“I它已经是: var mystring='foobar'; console.log(mystring[0]);//输出“f” console.log(mystring[3]);//输出“b”它已经是: var mystring='foobar'; console.log(mystring[0]);//输出“f

如何在JavaScript中将字符串转换为字符数组

我正在考虑向数组中添加一个字符串,如
“Hello world!”

注意:这不符合unicode<代码>“I 注意:这不符合unicode。
“I它已经是:

var mystring='foobar';
console.log(mystring[0]);//输出“f”
console.log(mystring[3]);//输出“b”
它已经是:

var mystring='foobar';
console.log(mystring[0]);//输出“f”

console.log(mystring[3]);//输出“b”
排列的
语法

您可以使用中引入的数组初始值设定项:


示例

函数a(){
返回参数;
}
var str='Hello World';
var arr1=[…str],
arr2=[…“你好,世界”],
arr3=新数组(…str),
arr4=a(…str);

控制台日志(arr1、arr2、arr3、arr4)扩展的
语法

您可以使用中引入的数组初始值设定项:


示例

函数a(){
返回参数;
}
var str='Hello World';
var arr1=[…str],
arr2=[…“你好,世界”],
arr3=新数组(…str),
arr4=a(…str);
控制台日志(arr1、arr2、arr3、arr4)作为,可能会中断
代理项对和错误解释“字符”。例如:

//不要使用这个!
常数a='As,可以中断
代理项对和错误解释“字符”。例如:

//不要使用这个!

const a='这是一个老问题,但我遇到了另一个尚未列出的解决方案

您可以使用Object.assign函数获得所需的输出:

var output=Object.assign([],“你好,世界!”);
控制台日志(输出);

//这是一个老问题,但我遇到了另一个尚未列出的解决方案

您可以使用Object.assign函数获得所需的输出:

var output=Object.assign([],“你好,世界!”);
控制台日志(输出);

//['H','e','l','l','o','w','o','r','l','d','!']
您可以迭代字符串的长度并按下:

const str='Hello World';
常量stringToArray=(文本)=>{
var chars=[];
对于(变量i=0;ilog(stringToArray(str))
您可以迭代字符串的长度并按下:

const str='Hello World';
常量stringToArray=(文本)=>{
var chars=[];
对于(变量i=0;iconsole.log(stringToArray(str))
您也可以使用
数组.from

var m=“你好,世界!”;

console.log(Array.from(m))
您也可以使用
Array.from

var m=“你好,世界!”;
console.log(Array.from(m))
这个怎么样

function stringToArray(string) {
  let length = string.length;
  let array = new Array(length);
  while (length--) {
    array[length] = string[length];
  }
  return array;
}
这个怎么样

function stringToArray(string) {
  let length = string.length;
  let array = new Array(length);
  while (length--) {
    array[length] = string[length];
  }
  return array;
}
简单回答:

let str='这是字符串,长度>26';
log([…str])简单答案:

let str='这是字符串,长度>26';
log([…str])也将完成这项工作

constresult=Array.prototype.slice.call(“你好,世界!”);
控制台日志(结果)也将完成这项工作

constresult=Array.prototype.slice.call(“你好,世界!”);
控制台日志(结果)您可能会(至少)将三种不同的东西视为“角色”,因此,您可能会希望使用三种不同的方法

拆分为UTF-16代码单元 JavaScript字符串最初是作为UTF-16代码单元序列发明的,追溯到历史上UTF-16代码单元和Unicode代码点之间存在一对一关系的时候。字符串的属性以UTF-16代码单位度量其长度,当您执行
someString[i]
时,您将获得
someString
的第i个UTF-16代码单位

因此,通过使用带有索引变量的C样式for循环,可以从字符串中获得UTF-16代码单元数组

constyourstring='Hello,World!';
常量字符=[];
对于(设i=0;i),有(至少)三种不同的东西可以被认为是“性格”,因此,有三种不同的方法可以使用

拆分为UTF-16代码单元 JavaScript字符串最初是作为UTF-16代码单元的序列发明的,追溯到历史上UTF-16代码单元和Unicode代码点之间存在一对一关系的时候。字符串的属性以UTF-16代码单元度量其长度,当您执行
someString[i]时
您将获得第i个UTF-16代码单位
someString

因此,通过使用带有索引变量的C样式for循环,可以从字符串中获得UTF-16代码单元数组

constyourstring='Hello,World!';
常量字符=[];

对于(设i=0;i一种可能性为下一种:

console.log([1, 2, 3].map(e => Math.random().toString(36).slice(2)).join('').split('').map(e => Math.random() > 0.5 ? e.toUpperCase() : e).join(''));

一种可能性是另一种:

console.log([1, 2, 3].map(e => Math.random().toString(36).slice(2)).join('').split('').map(e => Math.random() > 0.5 ? e.toUpperCase() : e).join(''));

ES6将字符串拆分为数组字符的方法是使用spread运算符。它简单而漂亮

array = [...myString];

例如:

让myString=“你好,世界!”
数组=[…myString];
console.log(数组);
//另一个例子:

console.log([…“另一个拆分的文本”]);
将字符串拆分为数组字符的ES6方法是使用spread运算符。它既简单又漂亮

array = [...myString];

例如:

让myString=“你好,世界!”
数组=[…myString];
console.log(数组);
//另一个例子:

console.log([…“另一个拆分文本”]);
-1:不是。试试看:
警报(“你好,世界!”=['H'、'e'、'l'、'l'、'o'、''、'w'、'o'、'r'、'l'、'd'])
对不起。我想说的是:“你可以