/**
* 数组内元素比较
* @param __prop__ 比较的字段
* @param __mode__ 从大到小还是从小到大
*/
Util.prototype.elementCompare = function (__prop__, __mode__) {
return function (obj1, obj2) {
var val1 = obj1[__prop__];
var val2 = obj2[__prop__];
if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
val1 = Number(val1);
val2 = Number(val2);
}
if (__mode__ == 'asc') {
if (val1 < val2) {
return -1;
} else if (val1 > val2) {
return 1;
} else {
return 0;
}
} else if (__mode__ == 'desc') {
if (val1 < val2) {
return 1;
} else if (val1 > val2) {
return -1;
} else {
return 0;
}
} else {
// noting
}
}
}
网友评论