您的位置:首页 > Web前端 > JavaScript

json对象数组按对象属性排序

2014-01-08 16:38 204 查看
var array = [
{name: 'a', phone: 1, value: 'val_4'},
{name: 'b', phone: 5, value: 'val_3'},
{name: 'd', phone: 3, value: 'val_2'},
{name: 'c', phone: 4, value: 'val_1'}
]
array.sort(getSortFun('desc', 'phone'));
function getSortFun(order, sortBy) {
var ordAlpah = (order == 'asc') ? '>' : '<';
var sortFun = new Function('a', 'b', 'return a.' + sortBy + ordAlpah + 'b.' + sortBy + '?1:-1');
return sortFun;
}

alert(JSON.stringify(array));


数组本身有sort方法,可以指定排序函数,因此可以动态生成一个排序函数来完成对按指定对象属性排序的需求;

注意:sort后原数组序列会发生变化!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: