Array.of() 方法會由引數(arguments)的數量來建立一個新的 Array 實體,而不管引數的數量或類型為何。

Array.of()Array 建構式之間的不同在於如何處理整數引數:Array.of(7) 會建立一個擁有單個元素—7—的陣列,而 Array(7) 會建立一個 length 屬性值為 7 的空陣列(註:這意味著這個陣列有 7 個空缺欄位(empty slots),而非 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 and Array.from proposal 以及 Array.of polyfill

範例

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

Polyfill

若所有執行環境沒有原生支援,可以在其他程式之前先執行以下程式碼來建立 Array.of()

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

規範

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

瀏覽器相容性

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung InternetNode.js
Basic supportChrome Full support 45Edge Full support YesFirefox Full support 25IE No support NoOpera Full support YesSafari Full support 9WebView Android Full support YesChrome Android Full support 39Edge Mobile Full support YesFirefox Android Full support 25Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 4.0nodejs Full support 4.0.0

Legend

Full support  
Full support
No support  
No support

參見

文件標籤與貢獻者

此頁面的貢獻者: jackblackevo
最近更新: jackblackevo,