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; } } }