1.根据数值比较大小
var arr = [
{
'name': 'abc',
'age': 20
},
{
'name': 'cde',
'age': 19
},
{
'name': 'dfc',
'age': 25
},
{
'name': 'bde',
'age': 21
},]
//数值排序
function compare(property) {
return function (a, b) {
return (a[property] - b[property])
}
}
arr.sort(compare('age'))
2.根据字符串比较大小
var arr = [
{
'name': 'abc',
'age': 20
},
{
'name': 'cde',
'age': 19
},
{
'name': 'dfc',
'age': 25
},
{
'name': 'bde',
'age': 21
},]
function compare(property) {
return function (a, b) {
var nameA = a[property].toUpperCase(); // ignore upper and lowercase
var nameB = b[property].toUpperCase(); // ignore upper and lowercase
if (nameA < nameB) {
return -1;
}
if (nameA > nameB) {
return 1;
}
return 0;
}
}
arr.sort(compare('name'))