Rod*_*igo -2 html javascript for-loop
我有一个带4个复选框的div.然后我运行以下javascript:
var elements = document.getElementById('myDiv').getElementsByTagName('input');
alert(elements.length); // output: 4
for (element in elements) {
alert(element);
}
alert('finish!');
Run Code Online (Sandbox Code Playgroud)
在4之后,我按顺序收到以下警报:
0
1
2
3
item
namedItem
length
finish!
Run Code Online (Sandbox Code Playgroud)
从0到3的数字是元素的索引.但是'item','namedItem'和'length'在这里意味着什么?
document.getElementById('myDiv').getElementsByTagName('input')不返回真正的数组.这是一个array like对象.所以函数喜欢forEach和map不存在.并for ... in ...得到了一个奇怪的行为.
您可以将其转换为真正的数组slice:
var elements = Array.prototype.slice.call(document.getElementById('myDiv').getElementsByTagName('input'));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |