【问题标题】:ESLint error: 'value' is never reassigned use 'const' insteadESLint 错误:永远不会重新分配“值”,而是使用“常量”
【发布时间】:2020-02-23 11:45:12
【问题描述】:

我正在将 ESLint 添加到我的 Node 项目中,但无法弄清楚如何更改此代码以使其正常工作:

const connection = {};

for (let [prop, value] of connectionString) {
  prop = prop.split(' ')[0];
  connection[prop] = value;
}

我收到错误:

'value' is never reassigned. Use 'const' instead.

【问题讨论】:

    标签: javascript ecmascript-6 eslint


    【解决方案1】:

    与其重新分配prop,不如为第一个单词创建一个新变量。这样,propvalue 都可以用const 声明:

    const connection = {};
    for (const [prop, value] of connectionString) {
      const firstWord = prop.split(' ')[0];
      connection[firstWord] = value;
    }
    

    大多数时候,干净可读的代码可以正常工作,而无需重新分配变量。最好仅在您绝对有时重新分配现有变量 - 这是规则存在的重要原因,以促使您使用 const(并因此产生更具可读性的代码)。

    你也可以在没有中间变量的情况下实现它:

    const connection = {};
    for (const [prop, value] of connectionString) {
      connection[prop.split(' ')[0]] = value;
    }
    

    【讨论】:

      猜你喜欢
      • 2018-07-20
      • 2020-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-11
      • 1970-01-01
      • 2020-07-04
      • 2016-07-20
      相关资源
      最近更新 更多