JavaScript:JSON数组根据属性排序
//按照属性值排序
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 array = [{
'name': 0,
'value': 55
}, {
'name': 1,
'value': -45
}, {
'name': 2,
'value': 22
}, {
'name': -1,
'value': -1
}];
array.sort(createComparisonFunction("value"));
console.log(array);
// [ { name: 1, value: -45 },
// { name: -1, value: -1 },
// { name: 2, value: 22 },
// { name: 0, value: 55 } ]