ES6中array.from和array.of的区别是什么

avatar
作者
筋斗云
阅读量:4

ES6中的array.from方法是将一个类数组对象或可迭代对象转换为一个新的数组。它可以将字符串、Set、Map等转换为数组。

array.of方法是创建一个包含传入参数的新数组。它与Array构造函数的行为不同之处在于,当传入参数只有一个时,Array构造函数会根据参数的类型来决定创建数组的方式,而array.of会将传入的参数作为数组的一个元素。

下面是两个方法的示例:

使用array.from方法:

const arr1 = Array.from('hello'); console.log(arr1); // ["h", "e", "l", "l", "o"]  const arr2 = Array.from([1, 2, 3], x => x * 2); console.log(arr2); // [2, 4, 6] 

使用array.of方法:

const arr3 = Array.of(1, 2, 3); console.log(arr3); // [1, 2, 3]  const arr4 = Array.of(7); console.log(arr4); // [7] 

可以看出,array.from方法将字符串和可迭代对象转换为数组,而array.of方法是创建一个包含传入参数的新数组。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!