如何使用jQuery.grep()过滤多维JSON对象

How to filter a Multi-dimension JSON object with jQuery.grep()

本文关键字:JSON 对象 过滤 何使用 jQuery grep      更新时间:2023-09-26

JSON对象是这样的:

{"data":
 [
  {"name":"Alan","height":"171","weight":"66"},
  {"name":"Ben","height":"182","weight":"90"},
  {"name":"Chris","height":"163","weight":"71"}
 ]
 ,"school":"Dover Secondary"
}

我想过滤JSON对象,以获得那些高于170和高于70的数据,然后对这个对象进行排序。从jQuery网站上,我了解到过滤可以很容易地在线性数组上实现,例如:

arr = jQuery.grep(arr, function(element, index){
  return (element > 70 && index = 'weight');
});

我如何同时过滤体重和身高来得到这个:

{"data":
 [
  {"name":"Ben","height":"182","weight":"90"},
 ]
 ,"school":"Dover Secondary"
}

我想你是这个意思:http://jsfiddle.net/NRuM7/1/.

var obj = {"data":
 [
  {"name":"Alan","height":"171","weight":"66"},
  {"name":"Ben","height":"182","weight":"90"},
  {"name":"Chris","height":"163","weight":"71"}
 ]
 ,"school":"Dover Secondary"
};
obj.data = jQuery.grep(obj.data, function(element, index){
  return element.weight > 70 && element.height > 170; // retain appropriate elements
});