Ответ 1
Что? Если вы пытаетесь, например, сортировать по имени, затем по дате, использовать Array.sortOn
.
arr.sortOn(['name', 'date'])
Я пытаюсь сортировать array
из objects
с ActionScript 3
.
Массив выглядит так:
var arr:Array = new Array ();
arr.push ({name:"John", date:"20080324", message:"Hi"});
arr.push ({name:"Susan", date:"20090528", message:"hello"});
Можно ли что-то сделать с помощью метода Array.sort(...)
?
Что? Если вы пытаетесь, например, сортировать по имени, затем по дате, использовать Array.sortOn
.
arr.sortOn(['name', 'date'])
Помимо использования sortOn
, который будет работать для таких полей, как строки и числа, если у вас есть другие объекты или более сложная логика, вы можете передать функцию сравнения в sort().
Функция сравнения будет вызываться функцией сортировки столько раз, сколько необходимо для сортировки массива. Каждый раз он передает вашей функции два объекта массива. Здесь вы определяете, как эти два объекта сортируются и сообщают об этом функции сортировки, возвращая: