判断回调函数的返回值,若大于0则前后交换位置,小于或等于0位置不动
var ary = [12,34,5,61,17,38,50,7];
ary.sort(function (a, b) {
// a-> 每一次执行回调函数时的当前项
// b-> 当前项的下一项
return a - b; // 升序
// return b - a; // 降序
});
返回1,大于0,则每一次的前后都要交换顺序,相当于
reverse
方法
ary.sort(function (a, b) {
return 1;
});
// 给二维数组排序,按照年龄由小到大
var person = [
{name: '大橙子', age: 20},
{name: '大瑞瑞', age: 24},
{name: '小阿珍', age: 18},
{name: '樊勇敢', age: 21},
{name: '大冰砸', age: 19}
];
person.sort(function (a, b) {
return a.age - b.age;
});
console.log(person);
汉字比较大小,字符串中的
localCompare
方法,先会转化成拼音,再按照字母表比较,靠后为大,若拼音一样,就会按照ASCII码值比较大小
person.sort(function (a, b) {
return a.name.localeCompare(b.name);
});
console.log(person);
网友评论