题目:由对象组成的数组,按照既定属性值进行排序
作者:互联网
sort()方法
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;
}
};
}
return出来的函数类似于:
arr.sort(function (a, b) {
return a - b;
})
arr.sort(function (a, b) {
return b - a;
})
在下面例子中可以这样使用:
var data = [{name: "Zachary", age: 28}, {name: "Nicholas", age: 29}];
data.sort(createComparisonFunction("name"));
alert(data[0].name); //Nicholas
data.sort(createComparisonFunction("age"));
alert(data[0].name); //Zachary
参考《JavaScript高级程序设计(第三版)》 P114
标签:sort,function,return,name,propertyName,数组,排序,data,既定 来源: https://blog.csdn.net/qq_17241921/article/details/120470854