Versions

new-parens

Enforce or disallow parentheses when invoking a constructor with no arguments

🔧 Fixable

Some problems reported by this rule are automatically fixable by the --fix command line option

当通 过new 关键字调用一个函数并且构造函数没有参数时,JavaScript 允许省略括号。然而,一些程序员认为,省略小括号与语言的其他部分不一致,从而使代码不那么清晰。

var person = new Person;

规则细节

当使用 new 关键字调用没有参数的构造函数时,这条规则可以强制或不允许使用括号。

选项

这个规则有一个选项。

  • "always" 在一个没有参数的新构造函数后执行小括号(默认)。
  • "never" 在一个没有参数的新构造函数后,不执行小括号。

always

使用此规则与 "always" 选项的错误示例:

Open in Playground
/*eslint new-parens: "error"*/

var person = new Person;
var person = new (Person);

使用此规则与 "always" 选项的正确示例:

Open in Playground
/*eslint new-parens: "error"*/

var person = new Person();
var person = new (Person)();

never

使用此规则与 "never" 选项的错误示例:

Open in Playground
/*eslint new-parens: ["error", "never"]*/

var person = new Person();
var person = new (Person)();

使用此规则与 "never" 选项的正确示例:

Open in Playground
/*eslint new-parens: ["error", "never"]*/

var person = new Person;
var person = (new Person);
var person = new Person("Name");

Version

This rule was introduced in ESLint v0.0.6.

Resources

更改语言