Skip to content
← Back to rules

eslint/no-plusplus 制限

💡 A suggestion is available for this rule for some violations.

何をするか

単項演算子 ++ および -- の使用を禁止します。

なぜ悪いのか

単項 ++ および -- 演算子は自動セミコロン挿入の対象となるため、空白の違いがソースコードの意味を変える可能性があります。たとえば、以下の2つのコードブロックは同等ではありません:

js
var i = 10;
var j = 20;

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

i;
++j;
// => i = 10, j = 21

このルールに対して誤りなコードの例:

js
var x = 0;
x++;
var y = 0;
y--;
for (let i = 0; i < l; i++) {
  doSomething(i);
}

このルールに対して正しいコードの例:

js
var x = 0;
x += 1;
var y = 0;
y -= 1;
for (let i = 0; i < l; i += 1) {
  doSomething(i);
}

設定

このルールは、次のプロパティを持つ設定オブジェクトを受け入れます:

allowForLoopAfterthoughts

type: boolean

default: false

for文の後処理(afterthought)で ++ および -- を許可するかどうか。

使用方法

設定ファイルまたはCLIを使ってこのルールを有効化するには、次のようにします:

json
{
  "rules": {
    "no-plusplus": "error"
  }
}
bash
oxlint --deny no-plusplus

参照