Html代码如下:
<!DOCTYPE html>
<html>
<head>
<title>01节点访问.html</title>
<script type="text/javascript">
</script>
</head>
<body>
<ul id="langue">
<li>hello</li>
<li>java</li>
<li>android</li>
</ul>
<script type="text/javascript">
var arr = document.getElementsByTagName("li");
for (var i in arr) {
console.info( i, arr[i] );
}
for ( var i = 0; i < arr.length; i++ ) {
console.info( arr[ i ] );
}
</script>
</body>
</html>
输出:
0
hello
1
java2
androidlength 3
item function item() { [native code] }
namedItem function namedItem() { [native code] }这里是引用
原因是因为:
document.getElementsByTagName("li") 获取到的是一个类数组对象NodeList,
它是一个对象而不是真正的数组, 所以,通过for/in语法遍历也会输出它继承过来的属性和方法
你可以使用for循环来遍历数组以及类数组对象