📅  最后修改于: 2023-12-03 15:29:28.363000             🧑  作者: Mango
Array.of
是一个在 ECMAScript 6 中被添加到 JavaScript 语言的静态方法。它用于创建一个新的、由任意数量的参数组成的数组。
Array.of(element0[, element1[, ...[, elementN]]]);
返回一个新的数组对象,由传入的参数组成。
const arr = Array.of(1, 2, 3, 4, 5);
console.log(arr); // [1, 2, 3, 4, 5]
const arr = Array.of(1);
console.log(arr); // [1]
const arr = Array.of("hello", true, 3);
console.log(arr); // ["hello", true, 3]
const arr = Array.of();
console.log(arr); // []
Array.of
方法与 Array()
构造函数的行为是不同的。
Array.of
方法与 Array()
构造函数之间的区别在于,Array()
利用传参的数量和类型的不同来创建不同的数组。当没有参数传递时,它会创建一个空数组。
const arr1 = Array(1, 2, 3);
console.log(arr1); // [1, 2, 3]
const arr2 = Array(3);
console.log(arr2); // [undefined, undefined, undefined]
const arr3 = Array();
console.log(arr3); // []
相比之下,Array.of
方法在没有参数传递时,仍然会创建一个空数组,而不是返回由一个未定义的元素组成的数组。这就是 Array.of
更好的选择之一。
不幸的是,Array.of
并不是所有浏览器都支持。不过它可以通过使用 polyfill 来解决这个问题。
Array.of
是一个在 ECMAScript 6 中新添加的方法,用于创建由任意数量参数组成的数组。它可以替代 Array()
构造函数,因为后者在没有参数传递时表现不一致。
虽然 Array.of
的兼容性并不完美,但通过 polyfill 可以很方便地在不支持它的浏览器中使用。