map ()主要遍歷操作數組和 數組對象,each主要遍歷jQuery對象。
each返回原來數組,不會創建一個新的數組。
map方法返回一個新的數組,濫用map會造成內存浪費。
map有return返回值,each 沒有。
傳遞的參數不同。
each
1.處理數組
var arr=['aa','bb','cc'];
$.each(arr,function(key,val){})
key: 0,1,2
val: aa,bb,cc
2.處理json數據
var obj={first:'cc',next:'vv',last:'nn'};
$.each(obj,function(key,val){});
key: first,next,last (key指的是屬性,因爲json格式是組無序的屬性值,val等同於object【key】)
3.處理選擇器(傳遞的參數相同)
$('span').each(function(index,element){})
map
$.map(arr,function(val,key){})
$.map(obj,function(val,key){});
$('span').map(function(index,element){})