首页 > 代码库 > javascript中的几种遍历方法浅析

javascript中的几种遍历方法浅析

 1. for...in 用于对数组或者对象的属性的可枚举属性进行循环操作。注意该对象来自原型链上的可枚举属性也会被循环。下面看例子

var arr = ["lee","hello","zhangsan"];
for(var i in arr) {
console.log(arr[i]);//lee hello zhangsan
}
数组也是对象 也可以添加自己的属性 我们为arr添加一个name属性
arr.name = “安妮宝贝”
for(var i in arr) {
console.log(arr[i]);//lee hello zhangsan 安妮宝贝
}

那么怎么理解该对象来自原型链上的可枚举属性也会被循环?看下面的例子
var bar = {a:1,b:2,c:3};
function foo() {
this.color = "red";
}
foo.prototype = bar;
var obj = new foo();
for(var prop in obj){
console.log("o."+prop+"="+obj[prop])//o.color = red o.a = 1 o.b =2 o.c = 3

}

最后一个例子复制代码运行一下看看结果

<ul id="box">
  <li class="child">1</li>
  <li class="child">2</li>
  <li class="child">3</li>
  <li class="child">4</li>
</ul>
<script>
 var ul = document.querySelector("#box");
 var li = ul.querySelectorAll(".child");
  for(var i in li) {
    console.log(li[i]);
    li[i].onclick = function() {
    alert("hello")
}
}
</script>



 2.forEach是ES5中操作数组的一种方法,主要功能是遍历数组直接看例子

         var arr = ["zhangsan","lisi","wangwu"];
arr.name ="sdfsdfsdf"; arr.forEach(
function(element){ console.log(element)// zhangsan lisi wangwu })

 

javascript中的几种遍历方法浅析