遍历数组中的元素(含es6方法)


  假如有这样一个数组。arr = [12,34,45,46,36,58,36,59],现在要遍历该数组。

  方法1:以前我们可能会这样做:

for(var i=0;i<arr.length;i++){
console.log(arr[i]+"\n")
}

 

  方法2:自ES5发布后,我们可以使用内置的forEach方法来遍历数组。 

arr.forEach(function(val){
    console.log(val+"\n")
})

  这段代码看起来简单,然而有些缺陷,就是不能使用break语句中断循环,也不能使用return语句返回到外层函数。

 

  方法3:于是我们很容易想到使用for-in来遍历数组 

for(var index in arr){
  console.log(arr[index]+"\n")  
}

    然而这样也会有一点问题,在这段代码中,赋给 index 的值不是实际的数字,而是字符串“0”“1”“2”,此时很可能在无意之间进行字符串算数计算,例如:“2”+1==“21”,这给编码带来极大的不便。还有,在某些情况下,这段代码可能按照随机顺序遍历数组元素。

 

 方法4:下面我的ES6方法登场了,就是使用for-of方法。

for(var val of arr){
    console.log(val+"\n")
}

  是不是很简洁,而且也不存在上述方法那样的缺陷。


  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM