如何使用document.querySelectorAll遍历所选元素
我正在尝试对通过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个额外的项目。我该怎么做呢?
回答:
for in
不建议对数组和类似数组的对象使用循环-您会明白为什么。不仅可以有数字索引项,例如length
属性或某些方法,还for
in可以遍历所有这些项。使用任一
for (var i = 0, len = checkboxes.length; i < len; i++) { //work with checkboxes[i]
}
要么
for (var i = 0, element; element = checkboxes[i]; i++) { //work with element
}
如果数组中的某些元素可能是虚假的(不是您的情况),则无法使用第二种方法,但是由于您不需要在[]
所有地方都使用表示法,因此第二种方法更具可读性。
以上是 如何使用document.querySelectorAll遍历所选元素 的全部内容, 来源链接: utcz.com/qa/417269.html