ECMAScript 2017 中提供的新方法:Array.from()

在 ECMAScript 2017 中,新加入了一个方法:Array.from()。这个方法可以将类似数组或迭代器对象转换成真正的数组,这个方法的使用非常简单,但是却非常实用。

什么是 Array.from()?

Array.from() 是一个静态方法,它接受两个参数:第一个参数是一个类数组对象或可迭代对象,第二个参数是一个可选的函数,用于对数组中的每个元素进行处理。

Array.from() 的语法

---------------------- ------- ----------
  • arrayLike:要转换成数组的类数组对象或可迭代对象。
  • mapFn:可选参数,用于对数组中的每个元素进行处理。
  • thisArg:可选参数,mapFn 中的 this 值。

Array.from() 的用法

将类数组对象转换成数组

我们经常会遇到一些类数组对象,比如函数中的 arguments 对象,它看起来像一个数组,但是却没有数组的方法。使用 Array.from() 就可以将它转换成真正的数组。

-------- ----- -
  --- ---- - ----------------------
  ------ --------------- -- -- - - ---
-

------------------ -- ---- -- -

将可迭代对象转换成数组

除了类数组对象,Array.from() 还可以将可迭代对象转换成数组。比如,我们可以将一个 Set 对象转换成数组。

--- --- - --- --------- ---- ------
--- --- - ----------------
----------------- -- ----- ---- ----

对数组中的每个元素进行处理

Array.from() 的第二个参数是一个函数,它可以对数组中的每个元素进行处理。比如,我们可以将一个字符串转换成数组,并将每个元素都转换成大写字母。

--- --- - --------
--- --- - --------------- ------ -- ----------------------
----------------- -- ----- ---- ---- ---- ----

Array.from() 的指导意义

Array.from() 的出现,让我们可以更方便地将类数组对象和可迭代对象转换成数组。这样,我们就可以使用数组的各种方法,比如 map()、reduce()、filter() 等,来处理这些对象。同时,Array.from() 的第二个参数也让我们可以对数组中的每个元素进行处理,这在某些场景下非常有用。

结论

Array.from() 是 ECMAScript 2017 中新增的一个方法,它可以将类数组对象和可迭代对象转换成真正的数组。同时,它还可以对数组中的每个元素进行处理。Array.from() 的出现,让我们可以更方便地处理这些对象,同时也让我们的代码更加简洁和易于理解。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6724a1062e7021665e147dd4