select에서 옵션을 제거하려고 할 때 항상 하나 남은 이유가 무엇입니까?
<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,입니다. 배열이었고 정적 인 상태였으며 아무런 문제가 없었습니다.