js原生循环的使用

 

js原生循环的使用_第1张图片

 

       不管是js原生自带的循环,还是一些工具包里面的循环(比如jquery里的$.each),里面的循环有多种多样.作为一个有强迫症的人,总是想选择最好的循环方式,效率最高的,最优雅的.在这里我只列举js自带的循环.虽然一些工具包里的循环看似很强大,但其本质上也是对js循环进行了封装而已,而且如果你不引进这些js文件,根本就无法使用它里面的循环方法.为了可以更无忧无虑的使用,推荐使用js原生的,在具有性能的优势上,也是挺优雅的.

对数组对象的遍历

第一种:普通for

for(i=0;i

第二种:优化版for

for(j = 0,len=arr.length; j < len; j++) { 
    console.log(arr[j])
}

第三种:foreach

arr.forEach(function(v,i){ //v==value 为arr项,i==index 为arr索引
    console.log(i+'  'v );
})

第四种:map

var temp=arr.map(function(val,index){

  console.log(val); 

  return val*val          

})

第五种:for in 遍历

for(var i in arr){
    console.log(arr[i]);
}

第六种:forof(需要ES6支持)

for( let i of arr){

    console.log(i);

}

效率最高的当属for循环的优化版,支持break,continue,

最优雅的当属map循环方式,支持使用return语句,遍历后返回数组

 

普通对象的遍历

ar obj = {'a':'a','b':'b','c':'c'};

for(var key in obj) {

     console.log(key,":",obj[key]);

}

对象的遍历只有这一种方法,所以我们只需要记这一种就行

        现在我不会为选用哪种循环而苦恼的,因为我只给自己列了3个选择,对于数组只有for循环优化版,和map优雅版;对于对象我只有1种,总之我不会为了选择循环而迷茫了

你可能感兴趣的:(js原生循环的使用)