跳至内容

@stylistic/js/

space-infix-ops

虽然格式化偏好非常个人化,但许多风格指南要求在运算符周围使用空格,例如

js
var sum = 1 + 2;

此规则的支持者认为,这使得代码更易于阅读,并且可以更容易地突出潜在的错误,例如

js
var sum = i+++2;

虽然这是有效的 JavaScript 语法,但很难确定作者的意图。

规则详情

此规则旨在确保中缀运算符周围有空格。

选项

此规则接受一个选项参数,具有以下默认值

json
"space-infix-ops": ["error", { "int32Hint": false }]

int32Hint

int32Hint 选项设置为 true(默认值为 false)以允许编写 a|0 而不带空格。

js
var foo = bar|0; // `foo` is forced to be signed 32 bit integer

此规则的错误代码示例

js
/*eslint @stylistic/js/space-infix-ops: "error"*/
/*eslint-env es6*/

a
+
b
a
+
b
a
+
b
a
?
b
:
c
const a
=
{b:1};
var {b
=
0}
=
bar;
function foo(a
=
0) { }
incorrect

此规则的正确代码示例

js
/*eslint @stylistic/js/space-infix-ops: "error"*/
/*eslint-env es6*/

a + b

a       + b

a ? b : c

const a = {b:1};

var {b = 0} = bar;

function foo(a = 0) { }
correct

何时不使用它

如果您不关心中缀运算符周围空格的一致性,则可以关闭此规则。