1.最常用的 for循环 for(i= 0; ilength; i++) { expression }  简单,可以优化 =>for(i=0,len=arr.length;i<len;i++){expression} 优化的方法:使用临时变量,将长度缓存起来,避免重复获取数组长度;当数组较大时优化效果才会比较明显,这种方法是所有循环遍历方法中性能最高的一种。

2.foreach循环遍历arr.forEach(function(value,index,array){expression})其中value 是数组中的值,index是数组中的下标,array是数组本身。数组自带forEach。不可以用break ,continue退出

3. for in循环遍历;for in是遍历对象属性for (let key in obj){console.log(obj[key])}  效率最低

4 ES6新属性  for of循环遍历for (var value of myArray) {

5.map循环 map:和forEach非常相似,都是用来遍历数组中的每一项值的,用来遍历数组中的每一项;区别:map的回调函数中支持return返回值;return的是什么,相当于把数组中的这一项变成什么(不影响原数组)

注意:

for each 和map在IE6-8都不兼容,需要自己定义方法。