-
Notifications
You must be signed in to change notification settings - Fork 1
Lang sortBy
Grigoriev Oleg edited this page Mar 24, 2013
·
1 revision
sortBy(items, criterion [, context = global [, reverse = false])
-
items
{Array} - исходный список объектов (не изменяется). -
criterion
{(Function|String)} - критерий сортировки. Имя поля или функция, формирующая критерий для каждого объекта. -
context
{Object} - контекст для вызоваcriterion
. -
reverse
{Boolean} - обратный порядок сортировки. -
:return
{Array} - отсортированный список.
Например, есть список точек:
var points = [
{'x': 5, 'y': 2},
{'x': 3, 'y': 4},
{'x': 2, 'y': -1},
{'x': -1, 'y': -23}
];
Отсортировать по возрастанию горизонтальной координаты:
go.Lang.sortBy(points, "x");
Или по убыванию вертикальной:
go.Lang.sortBy(points, "y", null, true);
Или по дальности от центра координат (корень из суммы квадратов):
go.Lang.sortBy(points, function (item) {return item.x * item.x + item.y * item.y; });
Если для criterion
указана функция, она вызывается в контексте context
и получает следующие аргументы:
-
item
{Object} - элемент списка, для которого требуется сформировать критерий. -
i
{Number} - индекс в исходном массиве. -
items
{Array} - весь исходный массив.