eslint/no-plusplus 限制
作用
禁止使用一元運算子 ++
和 --
。
為什麼這不好?
因為一元運算子 ++
和 --
會受到自動分號插入的影響,空白的差異會改變原始碼的語義。例如,這兩個程式碼區塊並不等效
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);
}