1 javascript ecmascript-6 eslint
我正在将 ESLint 添加到我的 Node 项目中,但无法弄清楚如何更改此代码以使其正常工作:
const connection = {};
for (let [prop, value] of connectionString) {
prop = prop.split(' ')[0];
connection[prop] = value;
}
Run Code Online (Sandbox Code Playgroud)
我收到错误:
'value' is never reassigned. Use 'const' instead.
不要重新分配 ,而是prop为第一个单词创建一个新变量。这样, 和prop都value可以用以下方式声明const:
const connection = {};
for (const [prop, value] of connectionString) {
const firstWord = prop.split(' ')[0];
connection[firstWord] = value;
}
Run Code Online (Sandbox Code Playgroud)
大多数时候,干净可读的代码可以很好地工作,而无需重新分配变量。最好仅在绝对必要时重新分配现有变量- 这是该规则存在的重要原因,以促使您使用const(并因此生成更易读的代码)。
您也可以在没有中间变量的情况下实现它:
const connection = {};
for (const [prop, value] of connectionString) {
connection[prop.split(' ')[0]] = value;
}
Run Code Online (Sandbox Code Playgroud)