Быстрый пример, что-то вроде этого должно работать.arr
- массив для сортировки, key
- ключ объекта для использования.Имейте в виду, это только один уровень глубокой сортировки.
var arr = [
{"one" : Math.random(), "two" : Math.random(), "id" : "First"},
{"one" : Math.random(), "two" : Math.random(), "id" : "Second"},
{"one" : Math.random(), "two" : Math.random(), "id" : "Third"}
];
var oSort = function (arr, key) {
arr.sort(function(a, b) {
a = a[key], b = b[key];
return a > b ? 1 : a < b ? -1 : 0;
});
};
oSort(arr, 'two');
http://jsfiddle.net/XwswP/
Изменить, чтобы ответить
Но я могу изменитьсуществующий метод, например, array.sort?Спасибо.
Да, это возможно, но не делайте этого.Если вы хотите перезаписать его, вы можете сделать
Array.prototype.sort = function() { ...