2011-09-21 3 views
10

jQuery.grep()와 다차원 JSON 개체를 필터링하는 방법 :내가 같이가는 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보다 무거 우며이 객체를 정렬합니다.

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

그건 실제 무게와 높이가 아닙니다! –

답변

21

나는 당신을 생각 :이 얻을 동시에 무게와 높이를 모두 필터링하려면 어떻게

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

다음 jQuery website에서, 나는 필터링이 쉽게 같은과 선형 배열에 달성 할 것이라는 점을 이해 의미 : 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 
}); 
+0

Err .. 무게와 높이를 모두 필터링하고 싶습니다. 할 수 있습니까? –

+0

@Ben : 죄송합니다. 제발 편집하십시오. – pimvdb

+0

네, 맞습니다. 감사 ;) –

관련 문제