Javascript 为什么Object.keys将id显示为键?

Javascript 为什么Object.keys将id显示为键?,javascript,Javascript,HTML JS var a=document.getElementsByTagName('input'); console.log(Object.keys(a)); 对于(var i=0;i

HTML


JS


var a=document.getElementsByTagName('input');
console.log(Object.keys(a));
对于(var i=0;i

在控制台中有三个键显示0,1,'btn'。为什么id显示在此对象中,以及如何避免此情况。

当您拥有来自
getElementsByTagName()
的集合时,您可以通过其索引或其id引用项

所以
a[0]
a.btn

我猜想您只是想对所有这些循环进行迭代,这只是编程101中的基本
for
循环:

var a = document.getElementsByTagName('input');
console.log(Object.keys(a));
for (var i = 0; i < Object.keys(a).length; i++) {
    console.log(a[i]);
}
for(变量i=0;i

这就是
.length
的作用

当您拥有来自
getElementsByTagName()
的集合时,您可以通过其索引或其ID来引用项

所以
a[0]
a.btn

我猜想您只是想对所有这些循环进行迭代,这只是编程101中的基本
for
循环:

var a = document.getElementsByTagName('input');
console.log(Object.keys(a));
for (var i = 0; i < Object.keys(a).length; i++) {
    console.log(a[i]);
}
for(变量i=0;i

这就是
.length
的作用

var a=document.getElementsByTagName('input');[].forEach.call(a,函数(el){console.log(el)})
-可以。。。不您不能隐藏
var a=document.getElementsByTagName('input');[].forEach.call(a,函数(el){console.log(el)})
-可以。。。不你不能隐瞒
for(var i = 0; i < a.length; i++) {
    // a[i]
}