JavaScript 字符串转换为数组
在本文中,您将学习如何将字符串转换为JavaScript中的数组数据类型。
有各种方法可以将字符串转换为数组,如下所述:
- 使用展开运算符(…)
- 使用朴素方法
- 使用String Split()方法
- 使用Array from()方法
- 使用slice()方法
方法1:展开运算符
展开运算符(…)允许将任何可迭代对象展开为单个元素来扩展成数组,即将字符串转换为字符。
语法:
let Arr = [...str];
示例: 在这个例子中,使用Spread Operator将一个字符串转换为数组。
Javascript
// Declare a String
let str= "GeeksforGeeks";
// Declare an Empty array
let arr = [];
// Use Spread Operator to Convert
// String to an Array
arr = [...str];
console.log(arr);
输出
[
'G', 'e', 'e', 'k',
's', 'f', 'o', 'r',
'G', 'e', 'e', 'k',
's'
]
方法2:Naive方法
这个方法包括遍历字符串的每个字符并将其推送到数组中。
示例: 在此示例中,我们将使用循环迭代给定的字符串并将字符串字符推入数组中。
Javascript
// Declare a String
let str= "GeeksforGeeks";
// Length of string
let len = str.length;
// Declare an Empty array
let arr = [];
// Use the for loop to Convert
// String to an Array
for (let i = 0; i < len; i++) {
arr.push(str[i]);
}
console.log(arr);
输出
[
'G', 'e', 'e', 'k',
's', 'f', 'o', 'r',
'G', 'e', 'e', 'k',
's'
]
方法3: 字符串分割() 方法
字符串分割() 方法将模式作为参数并将目标字符串作为列表或数组返回。分隔符表示在哪里进行分割,限制表示将处理的子字符串或长度的数量。
语法:
split(separator); // or
split(separator, limit);
示例:
JavaScript
// Declare a String
let str= "GeeksforGeeks";
// Use String split() method to
// Convert String to an Array
let arr = str.split('');
console.log(arr);
输出
[
'G', 'e', 'e', 'k',
's', 'f', 'o', 'r',
'G', 'e', 'e', 'k',
's'
]
方法4: Array.from()
方法
Array.from()
方法从参数中提供的对象返回一个新的数组实例。
语法:
Array.from(object, mapFunction, thisValue);
例子: 在这个例子中,我们将一个字符串传递给Array from()方法,将其转换为一个数组。
JavaScript
// Declare a String
let str= "GeeksforGeeks";
// Use Array from() method to
// Convert String to an Array
let arr = Array.from(str)
console.log(arr);
输出
[
'G', 'e', 'e', 'k',
's', 'f', 'o', 'r',
'G', 'e', 'e', 'k',
's'
]
方法5:使用 slice() 方法
调用 call() 方法来调用 slice() 方法,将字符串作为 this 值。这将创建一个新的数组,其中字符串中的每个字符都是一个元素。
示例:
Javascript
let str = "Welcome to GeeksforGeeks";
let array = Array.prototype.slice.call(str);
console.log(array);
输出
[
'W', 'e', 'l', 'c', 'o',
'm', 'e', ' ', 't', 'o',
' ', 'G', 'e', 'e', 'k',
's', 'f', 'o', 'r', 'G',
'e', 'e', 'k', 's'
]