跳至内容

@stylistic/

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/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/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

何时不使用它

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

TypeScript 特定

ts/space-infix-ops

ts
enum MyEnum {
  KEY = 'value',
}