有个json数据var json = [{"title":"广东","zip":"520","area":[{"a":"10","b":"20"}]},
           {"title":"广西","zip":"320","area":[{"a":"10","b":"20"}]},
           {"title":"山东","zip":"820","area":[{"a":"10","b":"20"}]},
           {"title":"黑龙江","zip":"720","area":[{"a":"10","b":"20"}]}];现在通过查找zip大于300小于800的出来。然后组合成一个新json对象$(json).each(function(index,obj){
  
if(parseInt(this.zip) > 300 && parseInt(this.zip) < 800)
{
   alert(obj);
   //此处弹出了符合条件的json对象。但我不懂得如何将该对象组合成新对象,以便再次操作得到的新json
}})

解决方案 »

  1.   

    $(json).each(function(index,obj){
      
    if(parseInt(this.zip) > 300 && parseInt(this.zip) < 800)
    {
      alert(obj);
      //此处弹出了符合条件的json对象。但我不懂得如何将该对象组合成新对象,以便再次操作得到的新json
    }
    alert(obj[index]);
    $.each(obj[index], function (key, data) {
        alert(key + "-" + data[key]);
    });
    })
      

  2.   


    var json = [{"title":"广东","zip":"520","area":[{"a":"10","b":"20"}]},
      {"title":"广西","zip":"320","area":[{"a":"10","b":"20"}]},
      {"title":"山东","zip":"820","area":[{"a":"10","b":"20"}]},
      {"title":"黑龙江","zip":"720","area":[{"a":"10","b":"20"}]}];
      var l=json.length-1;
      var newJson=[];
      for (var i=0;i<=l;i++)
      {
    var t=json[i];
    if(parseInt(t.zip) > 300 && parseInt(t.zip) < 800)
    {
    newJson.push(t);
    }
      }
      //test
      var r=newJson.length-1;
      for(var i=0;i<=r;i++)
      {
    var t=newJson[i];
    alert(t.title+' '+t.zip+' '+t.area[0].a+' '+t.area[0].b);
      }
      

  3.   


    var json = [{"title":"广东","zip":"520","area":[{"a":"10","b":"20"}]},
      {"title":"广西","zip":"320","area":[{"a":"10","b":"20"}]},
      {"title":"山东","zip":"820","area":[{"a":"10","b":"20"}]},
      {"title":"黑龙江","zip":"720","area":[{"a":"10","b":"20"}]}];
      var newJson=[];
      for(var i=0;i<json.length;i++){
          if(parseInt(json[i].zip)>300&&parseInt(json[i].zip<800)){
              newJson.push(json[i]);
         }
      }
    alert(json);
    alert(json.length);