Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #31 (permalink)  
Старый 18.11.2012, 15:46
Новичок на форуме
Отправить личное сообщение для кай Посмотреть профиль Найти все сообщения от кай
 
Регистрация: 18.11.2012
Сообщений: 1

Сообщение от JSTalker Посмотреть сообщение
Т.е. сам sort вызывает эту функцию много (сколько нужно) раз? А программисту достаточно указать один раз sort(foo())?

Вот что сам Флэнэган пишет по этому поводу:

"Для сортировки в какомлибо ином порядке, отличном от алфавитного, можно
передать методу sort() в качестве аргумента функцию сравнения. Эта функция
устанавливает, какой из двух ее аргументов должен присутствовать раньше в от
сортированном списке. Если первый аргумент должен предшествовать второму,
функция сравнения возвращает отрицательное число. Если первый аргумент
в отсортированном массиве должен следовать за вторым, то функция возвращает число, большее нуля. А если два значения эквивалентны (т. е. порядок их рас
положения не важен), функция сравнения возвращает 0."

var a = [33, 4, 1111, 222];
a.sort(); // Алфавитный порядок: 1111, 222, 33, 4
a.sort(function(a,b) { // Числовой порядок: 4, 33, 222, 1111
return a-b; // Возвращает значение < 0, 0, или > 0
}); // в зависимости от порядка сортировки a и b


Откуда тут вообще взялись a и b? Они же нигде явно не определялись.
Понятно, что они как то берутся из массива, но как?
вау!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите про Метод attachEvent() sanhai Events/DOM/Window 4 19.05.2010 14:47
Как узнать у какого объекта вызван метод. Scalar Events/DOM/Window 4 26.03.2010 11:10
Что можно и нужно прочитать про валидацию? Amateur Общие вопросы Javascript 5 09.03.2010 11:41
Назначить на обработчик события метод обьекта Logo Общие вопросы Javascript 11 20.06.2009 23:40
Добавить свой метод к элементу alekciy Events/DOM/Window 6 16.02.2009 19:29