noInvalidBuiltinInstantiation
诊断类别:lint/correctness/noInvalidBuiltinInstantiation
¥Diagnostic Category: lint/correctness/noInvalidBuiltinInstantiation
自从:v1.7.2
¥Since: v1.7.2
来源:
¥Sources:
-
与以下相同:
unicorn/new-for-builtins
¥Same as:
unicorn/new-for-builtins
-
与以下相同:
no-new-native-nonconstructor
¥Same as:
no-new-native-nonconstructor
确保内置函数正确实例化。
¥Ensure that builtins are correctly instantiated.
以下内置函数需要实例化 new
:
¥The following builtins require new
to be instantiate:
-
ArrayBuffer
-
BigInt64Array
-
BigUint64Array
-
DataView
-
FinalizationRegistry
-
Float32Array
-
Float64Array
-
Int16Array
-
Int32Array
-
Int8Array
-
地图
¥Map
-
Promise
-
代理
¥Proxy
-
设置
¥Set
-
SharedArrayBuffer
-
Uint16Array
-
Uint32Array
-
Uint8Array
-
Uint8ClampedArray
-
WeakMap
-
WeakRef
-
WeakSet
相反,以下内置函数不能用 new
建立:
¥Conversely, the following builtins cannot be instaiated with new
:
-
BigInt
-
符号
¥Symbol
¥Examples
¥Invalid
code-block.js:1:14 lint/correctness/noInvalidBuiltinInstantiation FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━
✖ Use BigInt() instead of new BigInt().
> 1 │ const text = new BigInt(1);
│ ^^^^^^^^^^^^^
2 │
ℹ Unsafe fix: Remove new keyword.
1 │ const·text·=·new·BigInt(1);
│ ----
code-block.js:1:13 lint/correctness/noInvalidBuiltinInstantiation FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━
✖ Use new Map() instead of Map().
> 1 │ const map = Map([
│ ^^^^^
> 2 │ [‘foo’, ‘bar’]
> 3 │ ]);
│ ^^
4 │
ℹ Unsafe fix: Add new keyword.
1 │ const·map·=·new·Map([
│ ++++
¥Valid
¥Related links