版本

no-array-constructor

禁用 Array 建構函式

💡 hasSuggestions

此規則回報的部分問題可透過編輯器的建議手動修正

一般不建議使用 Array 建構函式來建構新陣列,而是建議使用陣列字面表示法,因為單一參數的陷阱以及 Array 全域物件可能被重新定義。例外情況是當 Array 建構函式用於透過給予建構函式單一數字參數來有意建立指定大小的稀疏陣列時。

規則詳情

此規則禁用 Array 建構函式。

此規則的錯誤程式碼範例

在 Playground 中開啟
/*eslint no-array-constructor: "error"*/

Array();

Array(0, 1, 2);

new Array(0, 1, 2);

Array(...args);

此規則的正確程式碼範例

在 Playground 中開啟
/*eslint no-array-constructor: "error"*/

Array(500);

new Array(someOtherArray.length);

[0, 1, 2];

const createArray = Array => new Array();

何時不該使用

此規則強制執行幾乎通用的風格考量。話雖如此,如果偏好建構函式風格,則可以停用此規則。

版本

此規則在 ESLint v0.4.0 中引入。

資源

變更語言