JavaScript 数组(Array) 方法

JavaScript array.from() 方法用于创建一个新数组,该数组元素来自数组或可迭代对象的浅拷贝。

它也可以将字符串转为数组,其中每个单词都会转换为新数组中的一个数组元素。

语法

Array.from(object,map_fun,thisArg);

参数

  1. object:它是类数组或可迭代对象的名称,将对其应用 from() 方法。
  2. map_fun:可选参数,用于通过map()函数调用数组元素。
  3. thisArg: 一个可选参数,当我们执行 map_fun 时,其值用作 'this'。

返回

它返回一个新创建的数组。

注意:Array from() 方法允许从一个类似数组的对象创建一个新数组,指定一个长度属性和索引元素。 from() 方法的 length 属性通常为 1。

方法示例

让我们看下面的例子来更好地理解from()方法:

示例 1

这是一个从字符串创建数组的简单示例。

<html>
<head> <h5> JavaScript 数组方法 </h5> </head>
<body>
<script>
var arr=Array.from("You are viewing an example of string"); //字符串转数组
document.write("The resultant is: <br>" +arr);
</script>
</body>
</html>

输出:

JavaScript Array Methods
The resultant is:
Y,o,u, ,a,r,e, ,v,i,e,w,i,n,g, ,a,n, ,e,x,a,m,p,l,e, ,o,f, ,s,t,r,i,n,g

在显示的输出中,很明显字符串的每个字母都被转换为数组元素。

示例2

这是一个从类数组对象创建数组的示例。

<html>
<head> <h5> JavaScript 数组方法 </h5> </head>
<body>
<script>
var func = function() {
  	document.write(Array.from(arguments));
}
func('John','Roy','Jess','Mary');
</script>
</body>
</html>

输出:

John,Roy,Jess,Mary

示例3

这是一个将给定 Set 转换为数组的示例。

<html>
<head> <h5> JavaScript 数组方法 </h5> </head>
<body>
<script>
var set = new Set(['C','C++','Java','C','Java','C++','Python','Perl']); //集合。
document.write(Array.from(set)); //使用from()方法将给定的集合转换为数组。
</script>
</body>
</html>

输出:

C,C++,Java,Python,Perl

在输出中,我们可以看到每个值只出现一次。

注意:集合是在结果/输出中只出现一次的值的集合。这种行为保持了集合中每个值的唯一性。

示例4

这是一个使用长度属性生成数字序列的示例。

<html>
<head> <h5> JavaScript 数组方法 </h5> </head>
<body>
<script>
document.write(Array.from({length: 9}, (v, i) => i)); 
</script>
</body>
</html>

输出:

0,1,2,3,4,5,6,7,8