русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Метод sort()


Дата добавления: 2015-07-09; просмотров: 478; Нарушение авторских прав


 

Метод Array.sort() на месте сортирует элементы массива и возвращает отсорти_ рованный массив. Если метод sort() вызывается без аргументов, то он сортирует элементы массива в алфавитном порядке (при необходимости временно преобра_ зуя их в строки для выполнения сравнения):

 

var a = new Array("banana", "cherry", "apple"); a.sort();

var s = a.join(", "); // s == "apple, banana, cherry"

Неопределенные элементы переносятся в конец массива.

 

Для сортировки в каком_либо ином порядке, отличном от алфавитного, можно передать методу 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

 

Обратите внимание, насколько удобно использовать в этом фрагменте функцио_ нальный литерал. Функция сравнения вызывается только один раз, поэтому нет необходимости давать ей имя.


 

7.7. Методы массивов
   

 



В качестве еще одного примера сортировки элементов массива вы можете выпол_ нить алфавитную сортировку массива строк без учета регистра символов, передав методу функцию сравнения, преобразующую перед сравнением оба своих аргу_ мента в нижний регистр (с помощью метода toLowerCase()). Можно придумать и другие функции сортировки, сортирующие числа в различном экзотическом по_ рядке: обратном числовом, нечетные числа перед четными и т. д. Более интерес_ ные возможности, конечно же, открываются, когда сравниваемые элементы мас_ сива представляют собой объекты, а не простые типы, такие как числа и строки.

 



<== предыдущая лекция | следующая лекция ==>
Метод join() | Метод splice()


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.224 сек.