版本

no-new-object

禁用 Object 建構函式

重要

此規則已在 ESLint v8.50.0 中棄用。請將此規則替換為 no-object-constructor

了解更多

Object 建構函式用於在 JavaScript 中建立新的通用物件,例如

var myObject = new Object();

然而,這與使用更簡潔的物件實字語法沒有區別

var myObject = {};

因此,許多人偏好始終使用物件實字語法,而從不使用 Object 建構函式。

雖然這兩種方法之間沒有效能差異,但物件實字形式的位元組節省和簡潔性使其成為建立新物件的事實標準方法。

規則詳情

此規則禁止使用 new 呼叫 Object 建構函式。

此規則的錯誤程式碼範例

在線上編輯器中開啟
/*eslint no-new-object: "error"*/

var myObject = new Object();

new Object();

var foo = new Object("foo");

此規則的正確程式碼範例

在線上編輯器中開啟
/*eslint no-new-object: "error"*/

var myObject = new CustomObject();

var myObject = {};

var Object = function Object() {};
new Object();

var foo = Object("foo");

何時不該使用

如果您希望允許使用 newObject 建構函式,您可以安全地關閉此規則。

版本

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

資源

變更語言