var str='[{"id":31,"name":"值1","menuSort":94,"enabled":1,"parentId":23},{"id":32,"name":"值2","menuSort":93,"enabled":1,"parentId":23}]'; var json=JSON.parse(str);
对于对象数组中个别字段进行排序,对上面的menuSort字段进行JSONObject对象数组进行排序。json
js以下:数组
json.sort(compare("menuSort"));
升序:spa
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; } } }
降序:code
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; } } }