Khi cố gắng loại bỏ các tùy chọn khỏi lựa chọn, luôn luôn có một tùy chọn, tại sao?
<select id="form-select">
<option>111</option>
<option>222</option>
<option>333</option>
</select>
JS này không hoạt động:
var t = document.querySelector('#form-select');
for(var i of t.options) {
t.remove(i.index)
}
Và điều này cũng không hoạt động:
for(var i of document.querySelector('#form-select').options) {
i.remove()
}
Tôi biết rằng có những giải pháp khác để đạt được điều đó, nhưng tôi muốn hiểu tại sao nó không hoạt động như mong muốn
.optionslà không một mảng, mà là nguồn gốc của vấn đề - đúng hơn, nó là một HTMLCollection, đó là sống. Nó là một mảng, nó là tĩnh và sẽ không có vấn đề gì.