for 文の中で li を const で宣言したのに、再宣言・再代入できるのでしょうか?

定数はループが終わるたびに(ブロックから抜けるたびに)廃棄されます。
2024年1月15日
ユーザー

いつもお世話になっております。

li 要素を繰り返しつくるチャレンジで、
以下のようなコードを書きました。

for (let i = 1; i < 4; i++) {
      const li = document.createElement('li');
      li.textContent = quiz[i];
      li.addEventListener('click', () => {
        if (quiz[4] === i - 1) {
          li.classList.add('correct');
        } else {
          li.classList.add('wrong');
        }
      });
      ul.appendChild(li);
    }

無事に作動しましたが疑問に思ったことがあり、
なぜ for 文の中で liconst で宣言したのに、再宣言・再代入できるのでしょうか。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?