Eslint
规则 | Rules

no-plusplus

不允许一元运算符++和--(no-plusplus)

由于一元++--运算符都受自动分号插入的影响,因此空格的差异可能会改变源代码的语义。

var i = 10; var j = 20; i ++ j // i = 11, j = 20

var i = 10; var j = 20; i ++ j // i = 10, j = 21

规则细节

这条规则不允许一元运算符++--

此规则的错误代码示例:

/*eslint no-plusplus: "error"*/ var foo = 0; foo++; var bar = 42; bar--; for (i = 0; i < l; i++) { return; }

此规则的正确代码示例:

/*eslint no-plusplus: "error"*/ var foo = 0; foo += 1; var bar = 42; bar -= 1; for (i = 0; i < l; i += 1) { return; }

选项

此规则有一个对象选项。

  • "allowForLoopAfterthoughts": true允许一元运算符++和循环--的后缀(最终表达式)for

allowForLoopAfterthoughts

此规则的正确代码示例包含以下{ "allowForLoopAfterthoughts": true }选项:

/*eslint no-plusplus: ["error", { "allowForLoopAfterthoughts": true }]*/ for (i = 0; i < l; i++) { return; } for (i = 0; i < l; i--) { return; }

版本

该规则在ESLint 0.0.9中引入。

资源