$.map和$.extend来复制数组(OA差旅)

$.map:对数组的每个元素调用定义的回调函数并返回包含结果的数组。

对数组用指定的方法。

//将原数组中每个元素加 4 转换为一个新数组。
//jQuery 代码:
$.map( [0,1,2], function(n){
 return n + 4;
});
//结果:
[4, 5, 6]

$.extend:

<span style="font-size:18px;">//用法: jQuery.extend(obj1,obj2,obj3,..) 
var Css1={size: "10px",style: "oblique"} 
var Css2={size: "12px",style: "oblique",weight: "bolder"} 
$.jQuery.extend(Css1,Css2) 
//结果:Css1的size属性被覆盖,而且继承了Css2的weight属性 
// Css1 = {size: "12px",style: "oblique",weight: "bolder"} 
</span> 

综上所述:

 $.map(plane.getList().item, function(obj) {
        return $.extend(true, {}, obj);
 });
plane.getList().item为:[object,object]包含两个对象的数组,上面代码的意思是:使用$.map函数将数组中的每个对象执行回调函数 $.extend函数, 使用
$.extend合并对象{}和obj;最终返回新数组;
综上所述:复制对象可以使用
$.extend(true, {}, obj)
复制数组可以使用$.map()
posted @ 2016-12-29 11:15  小猪冒泡  阅读(539)  评论(0编辑  收藏  举报