绕过 tslint:每个声明一个变量

Get around tslint: one-variable-per-declaration

下面这个规则如何编码?

let someArray = [...];
for (let i = 0, n = someArray.length; i < n; i++) {
  ...
}

这几乎是 JavaScript 中的经典。

tsLint 规则旨在提高代码的可读性。

大多数人缓存数组的长度,因为他们认为有一个 performance benefit。如果这是您这样做的唯一原因,那么潜在的边际收益不值得可读性成本(当我 运行 在浏览器中进行 JSPerf 测试时,它实际上更慢)。

所以这是默认值 "tsLint recommended solution"...

for (let i = 0; i < someArray.length; i++) {

在JavaScript中,长度属性没有遍历数组,所以开销可以忽略不计。

如果您不同意,当然可以禁用该规则 - 这是 "comment" 方法。

/* tslint:disable:one-variable-per-declaration */

或者配置方式:

"one-variable-per-declaration": false

或者在您的情况下,您可能希望使用仅针对 for 循环禁用它的配置标志:

"one-variable-per-declaration": [true, "ignore-for-loop"]