このようにジェネリックにできますか?
function filterArray(inputArray,customFunction){
return $.grep(inputArray, function(e){ return customFunction(e); });
}
ここでcustomFunction
、オブジェクトを選択済みとして修飾するためのユーザー定義関数を指定できます
例 :
var sampleArray = [{name:"Ahamed",age: 21},
{name:"AhamedX",age: 21},
{name:"Babu",age: 25},
{name:"Mustafa",age: 27} ];
function nameComparator(obj){
return obj["name"]=="Ahamed";
}
function ageFilter(obj){
return obj["age"]>=25;
}
var filteredArray=filterArray(sampleArray,nameComparator);
alert(filteredArray.length);
var filteredArray=filterArray(sampleArray,ageFilter);
alert(filteredArray.length);
フィドルリンク: http://jsfiddle.net/MAq6c/