Skip to content

Latest commit

 

History

History
85 lines (68 loc) · 4.8 KB

new-for-builtins.md

File metadata and controls

85 lines (68 loc) · 4.8 KB

Enforce the use of new for all builtins, except String, Number, Boolean, Symbol and BigInt

This rule is part of the recommended config.

🔧 This rule is auto-fixable.

They work the same, but new should be preferred for consistency with other constructors.

Enforces the use of new for following builtins:

Disallows the use of new for following builtins.

These should not use new as that would create object wrappers for the primitive values, which is not what you want. However, without new they can be useful for coercing a value to that type.

This rule is fixable, except new String(), new Number(), and new Boolean(), they return wrapped object.

Fail

const list = Array(10);
const now = Date();
const map = Map([
	['foo', 'bar']
]);

Pass

const list = new Array(10);
const now = new Date();
const map = new Map([
	['foo', 'bar']
]);