经常遇到我们按照某一属性排序的方法,比如按照年龄大小对成员排名,不多说,看例子
var data
= [{
name
:
"jiang",
age
:
22
}, {
name
:
"pander",
age
:
21
}, {
name
:
"krome",
age
:
25
},
{
name
:
"Koges",
age
:
20
},];
对数组中的每一个对象按照属性age来排序,这里我们用到的是js的sort方法
//定义一个比较器
function
compare(
propertyName) {
return
function(
object1,
object2) {
var value1
= object1[propertyName];
var value2
= object2[propertyName];
if (value2
< value1) {
return
1;
}
else
if (value2
> value1) {
return
-
1;
}
else {
return
0;
}
}
}
//使用方法
data.
sort(
compare(
"age"));
console.
log(data);
打印结果
对于sort我们从官方文档看一下解释