選択からオプションを削除しようとすると、常に1つ残っていますが、なぜですか?
<select id="form-select">
<option>111</option>
<option>222</option>
<option>333</option>
</select>
このJSは機能していません:
var t = document.querySelector('#form-select');
for(var i of t.options) {
t.remove(i.index)
}
そして、これも機能していません:
for(var i of document.querySelector('#form-select').options) {
i.remove()
}
それを達成するための他の解決策があることを知っていますが、なぜそれが想定どおりに機能しないのかを理解したいと思います
.optionsではない問題の発生源である配列、 -むしろ、それは生きているHTMLCollection、です。それが配列だったら、それは静的で、問題はありません。