首页 > 代码库 > 3、假设有一个对象数组,想根据某个对象属性对数组进行排序时

3、假设有一个对象数组,想根据某个对象属性对数组进行排序时

function createComparisonFunction(propertyName){

return function(object1,object2){
var value1=object1[propertyName];
var value2=object2[propertyName];
if(value1<value2){
return -1
}else if(value1>value2){
return 1
}else {
return 0;
}
}}

例如:var data=http://www.mamicode.com/[{name:"zachary",age:28},{name:"nicholas",age:29}];
data.sort(createComparisonFunction("name"));
alert(data[0].name);//Nicholas 此时是根据name排序