no-new-symbol
Disallow new
operators with the Symbol
object
✅ Recommended
The "extends": "eslint:recommended"
property in a configuration file enables this rule
Symbol
不打算与 new
运算符一起使用,而是作为一个函数来调用。
var foo = new Symbol("foo");
这将抛出一个 TypeError
异常。
规则细节
这条规则的目的是防止用 new
运算符意外地调用 Symbol
。
示例
使用此规则的错误示例:
Open in Playground
/*eslint no-new-symbol: "error"*/
/*eslint-env es6*/
var foo = new Symbol('foo');
使用此规则的正确示例:
Open in Playground
/*eslint no-new-symbol: "error"*/
/*eslint-env es6*/
var foo = Symbol('foo');
// Ignores shadowed Symbol.
function bar(Symbol) {
const baz = new Symbol("baz");
}
何时不用
不应该在 ES3/5 环境中使用此规则。
Handled by TypeScript
It is safe to disable this rule when using TypeScript because TypeScript's compiler enforces this check.
Version
This rule was introduced in ESLint v2.0.0-beta.1.