Saya menambahkan ESLint ke proyek Node saya dan tidak tahu cara mengubah kode ini agar berfungsi dengan baik:

const connection = {};

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

Saya mendapatkan kesalahan:

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

0
WebJunior 28 Oktober 2019, 10:27

1 menjawab

Jawaban Terbaik

Daripada menugaskan ulang prop, buat variabel baru untuk kata pertama. Dengan begitu, baik prop dan value dapat dideklarasikan dengan const:

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

Sebagian besar waktu, kode yang dapat dibaca bersih dapat berfungsi dengan baik tanpa pernah menetapkan kembali variabel. Sebaiknya hanya menetapkan ulang variabel yang ada ketika Anda benar-benar harus - itulah sebagian besar alasan mengapa aturan itu ada, untuk mendorong Anda menggunakan const (dan sebagai hasilnya menghasilkan kode yang lebih mudah dibaca) .

Anda juga dapat mencapainya tanpa variabel perantara:

const connection = {};
for (const [prop, value] of connectionString) {
  connection[prop.split(' ')[0]] = value;
}
4
CertainPerformance 28 Oktober 2019, 07:29