我正在尝试循环使用 document.querySelectorAll 查询的选定元素,但是如何?
例如我使用:
var checkboxes = document.querySelectorAll('.check');
for( i in checkboxes) {
console.log(checkboxes[i]);
}
输出:
<input id="check-1" class="check" type="checkbox" name="check">
<input id="check-2" class="check" type="checkbox" name="check">
<input id="check-3" class="check" type="checkbox" name="check">
<input id="check-4" class="check" type="checkbox" name="check">
<input id="check-5" class="check" type="checkbox" name="check">
<input id="check-6" class="check" type="checkbox" name="check">
<input id="check-7" class="check" type="checkbox" name="check">
<input id="check-8" class="check" type="checkbox" name="check">
<input id="check-9" class="check" type="checkbox" name="check">
<input id="check-10" class="check" type="checkbox" name="check" checked="">
10
item()
namedItem()
我的问题是最后这个方法返回 3 个额外的项目。我怎样才能正确地做到这一点?
原文由 Hadi Mostafapour 发布,翻译遵循 CC BY-SA 4.0 许可协议
for in
不建议将循环用于数组和类似数组的对象 - 你明白为什么。不仅可以有数字索引项,例如length
属性或某些方法,但是for in
将遍历所有这些项。使用任一或者
如果数组中的某些元素可能是虚假的(不是您的情况),则不能使用第二种方法,但可以更具可读性,因为您不需要在任何地方使用
[]
符号。