Array.from用法详解

发布时间:2019-01-03 作者:一点通


Array.from()方法是从一个数组可迭代对象中创建一个新的数组实例

语法为Array.from(arrayLike[, mapFn[, thisArg]])

arrayLike是要转换成数组的伪数组对象或可迭代对象。

mapFn(可选)如果指定了该参数,新数组中的每个元素会执行该回调函数。

thisArg(可选)可选参数,执行回调函数mapFn时this对象。

字符串

Array.from('foo')
// ["f", "o", "o"]

其实我们还可以通过split方法将字符串转伪数组

Set

let s = new Set(['foo', window])
Array.from(s)
// ["foo", window]

Map

let m = new Map([[1, 2], [2, 4], [4, 8]])
Array.from(m)
// [[1, 2], [2, 4], [4, 8]]

类似数组的对象,如arguments

function f(){
    return Array.from(arguments)
}

f(1, 2, 3)

// [1, 2, 3]