Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。

 Array.of() 和 Array 构造函数之间的区别在于处理整数参数:Array.of(7) 创建一个具有单个元素 7 的数组,而 Array(7) 创建一个长度为7的空数组(注意:这是指一个有7个空位的数组,而不是由7个undefined组成的数组)。

Array.of(7);       // [7] 
Array.of(1, 2, 3); // [1, 2, 3]

Array(7);          // [ , , , , , , ]
Array(1, 2, 3);    // [1, 2, 3]

语法

Array.of(element0[, element1[, ...[, elementN]]])

参数

elementN
任意个参数,将按顺序成为返回数组中的元素。

返回值

新的 Array 实例。

描述

此函数是ECMAScript 2015标准的一部分。详见 Array.of 和 Array.from proposal 和 Array.of polyfill

示例

Array.of(1);         // [1]
Array.of(1, 2, 3);   // [1, 2, 3]
Array.of(undefined); // [undefined]

兼容旧环境

如果原生不支持的话,在其他代码之前执行以下代码会创建 Array.of() 。

if (!Array.of) {
  Array.of = function() {
    return Array.prototype.slice.call(arguments);
  };
}

规范

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
Array.of
Standard Initial definition.
ECMAScript Latest Draft (ECMA-262)
Array.of
Draft  

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support45 Yes25 No Yes9
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes39 Yes25 Yes Yes4.0

相关链接

文档标签和贡献者

最后编辑者: fscholz,