jQuery中json对象的复制方式介绍(数组及对象)

1、jQuery自带的$.map方式

  

复制代码 代码如下:

  $.map(json, function (n) { return n; });

  这种方式原来用于复制数组还可以,今天用它复制数组中的某一条记录,发现字段名称丢失了,后来发现了第二种方法。

  2、深复制与浅复制

  

复制代码 代码如下:

  // 浅层复制(只复制顶层的非 object 元素)

  var newObject = jQuery.extend({}, oldObject);

  // 深层复制(一层一层往下复制直到最底层)

  var newObject = jQuery.extend(true, {}, oldObject);

  用的是深复制的方式,复制对象时发现字段丢失的现象没有了。

  3、数组的过滤

  找了一下javascript的数组的方法,没有过滤的方法,后来发现jQuery有提供,尝试了一下,居然很好用。

  

复制代码 代码如下:

  $.grep(jsonTmp, function (item)

  {

  return item.LegendTitle == field;

  }, false);

  function的内容根据实际的需要写就可以了,不行的话参考jQuery的帮助,那里说的很详细。

  4、顺便说一下数组的排序

  

复制代码 代码如下:

  json2.sort(function (a, b) { return a["requiredColumn"]["crimeTime"] > b["requiredColumn"]["crimeTime"] ? 1 : -1 });

  这个用起来也比较方便