您的位置:首页 > Web前端 > JavaScript

JS中对List、Map的各种遍历方式

2018-02-13 10:57 531 查看
var list1 = ["number","name"];
var list2 = ["36","Crown","15","Faker","Swift","68","Dandy"];
var map_demo = { name: "John", lang: "JS" };
1.最常用的for循环
for(var i=0;i<list2.length;i++){
        console.info(i +":"+ list2 [i]);
}

改进:这里可以将list2.length提出来,不用每次计算长度,效率更高一些,such as:
var len=list2.length;
for(var i=0;i<len;i++){
        console.info(i +":"+ list2 [i]);

}
小结:很常见也很常用,效率也不差,但不能遍历map。
2.for...in...遍历List/map
//遍历map
for(var key in map_demo){
        console.info(key+":"+map_demo[key]);
}
//遍历List
for(var index in list2){
        console.info(index+":"+list2[index]);

}
小结:对于List来说,能不用for...in就不要用,效率低下。
3.forEach遍历List
list2.forEach(function (element, index, array) {
        console.info(element); //当前元素的值
        console.info(index);   //当前下标
        console.info(array);  //数组本身 

});
小结:和for循环效率差不多。
4.$.each()遍历List/map
//遍历List
$.each(list2,function(index,items){
        console.info(index+":"+items);
});
//遍历map
$.each(map_demo,function(key,value){
        console.info("key: " + key + ", Value: " + value );

})
5.$.map()遍历List/map
//遍历List
var new_list = $.map(list2,function(items,index){
        return items+"!";
})
console.info(new_list);
    
//遍历map
$.map(map_demo,function(key,value){  
    console.log(key+":"+value);  

}); 
小结:$.map()写法和$.each()类似,但对list的遍历时,参数顺序和$.each()是相反的,并且可以带返回值。对map的遍历和$.each()一样
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  List Map 遍历 JS