eslint/operator-assignment 风格
它的作用
此规则在可能的情况下要求或禁止使用赋值运算符简写形式。 它鼓励使用诸如 +=、-=、*=、/= 等简写赋值运算符, 以使代码更加简洁和易读。
为什么这是不好的?
JavaScript 提供了将变量赋值与简单数学运算结合的简写运算符。 未能使用这些简写运算符可能导致代码过于冗长, 并且被视为错失了提升清晰度和简洁性的机会。
示例
使用默认 always 选项时,错误 的代码示例:
js
x = x + y;
x = y * x;
x[0] = x[0] / y;
x.y = x.y << z;使用默认 always 选项时,正确 的代码示例:
js
x = y;
x += y;
x = y * z;
x = x * y * z;
x[0] /= y;
x[foo()] = x[foo()] % 2;
x = y + x; // `+` 不总是满足交换律(例如:x = "abc")使用 never 选项时,错误 的代码示例:
js
x *= y;
x ^= (y + z) / foo();使用 never 选项时,正确 的代码示例:
js
x = x + y;
x.y = x.y / a.b;配置
此规则接受以下字符串值之一:
"always"
在可能的情况下强制使用赋值运算符简写。
"never"
禁止使用赋值运算符简写。
如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"operator-assignment": "error"
}
}bash
oxlint --deny operator-assignment