方法一:
var newList = [
{name: "Bruce", age: 23, id: 16, score: 80,time:'2017-02-30'},
{name: "Alice", age: 24, id: 12, score: 90,time:'2014-07-10'},
{name: "David", age: 21, id: 11, score: 70,time:'2015-10-20'},
{name: "Cindy", age: 22, id: 10, score: 100,time:'2018-05-05'},
];
var Ranging = {
compareUp: function(propertyName){
// 升序排序
if ((typeof $(this)[0][propertyName]) != "number") { // 属性值为非数字
return function(object1, object2) {
var value1 = object1[propertyName];
var value2 = object2[propertyName];
return value1.localeCompare(value2);
}
}
else {
return function(object1, object2) { // 属性值为数字
var value1 = object1[propertyName];
var value2 = object2[propertyName];
return value1 - value2;
}
}
},
compareDown: function(propertyName){
if ((typeof $(this)[0][propertyName]) != "number") { // 属性值为非数字
return function(object1, object2) {
var value1 = object1[propertyName];
var value2 = object2[propertyName];
return value2.localeCompare(value1);
}
}
else {
return function(object1, object2) { // 属性值为数字
var value1 = object1[propertyName];
var value2 = object2[propertyName];
return value2 - value1;
}
}
},
rangeFun: function(){
newList = newList.sort(Ranging.compareUp("time"));
console.log(newList)
}
}
Ranging.rangeFun()