no-useless-concat
Disallow unnecessary concatenation of strings (no-useless-concat)
没有必要将两个字符串连接在一起,例如:
var foo = "a" + "b";
此代码很可能是重构的结果,其中一个变量已从连接中移除(如"a" + b + "b"
)。在这种情况下,级联并不重要,代码可以重写为:
var foo = "ab";
规则细节
这条规则旨在标记2个文字的连接,当它们可以合并成一个文字时。文字可以是字符串或模板文字。
此规则的错误
代码示例:
/*eslint no-useless-concat: "error"*/
/*eslint-env es6*/
// these are the same as "10"
var a = `some` + `string`;
var a = '1' + '0';
var a = '1' + `0`;
var a = `1` + '0';
var a = `1` + `0`;
此规则的正确
代码示例:
/*eslint no-useless-concat: "error"*/
// when a non string is included
var c = a + b;
var c = '1' + a;
var a = 1 + '1';
var c = 1 - 2;
// when the string concatenation is multiline
var c = "foo" +
"bar";
何时不使用它
如果您不希望收到关于不必要的字符串串联的通知,则可以安全地禁用此规则。
版本
该规则在 ESLint 1.3.0中引入。