Введение в JavaScript

       

Метод sort()


Как принято в современных интерпретируемых языках, например в Perl, метод sort() позволяет отсортировать элементы массива в соответствии с некоторой функцией сортировки, чье имя используется в качестве аргумента метода:

a = new Array(1,6,9,9,3,5); function g(a,b) { if(a > b) return 1; if(a < b) return -1; if(a==b) return 0; } b = a.sort(g);

В результате выполнения этого кода получим массив следующего вида:

b[0]=1 b[1]=3 b[2]=5 b[3]=6 b[4]=9 b[5]=9

Возможность использования произвольной функции сортировки позволяет выполнять подробный анализ строковых объектов. Одним из таких примеров может служить анализ строки атрибута SRC контейнера IMG, если картинка подставляется скриптом, и сортировка полей формы по значениям:

document.image.src = "http://www.intuit.ru:80/cgi-bin/ image?x=10&y=20&z=15";

Выделим x и y. Затем отсортируем их:

str = "http://www.intuit.ru:80/cgi-bin/ image?x=10&y=20&z=15"; s = str.split('?'); s1 = s[1].split('&'); s2 = s1.sort(g); for(i=0;i<s2.length;i++) document.write("s2["+i+"]= '"+s2[i]+"'<br>"); s2[0]='x=10' s2[1]='z=15' s2[2]='y=20'

Аналогичные манипуляции можно проделать с любым массивом. Если не указывать функции в аргументе метода сортировки, то элементы массива сортируются в лексикографическом порядке. Это значит, что они сначала преобразуются в строки и только потом сортируются.

on_load_lecture()

Дальше »



  Если Вы заметили ошибку - сообщите нам.  
Страницы:

« |

1

|

2

|

3

|

4

|

5

|

6

|

7

|

вопросы | »

|

учебники

|

для печати и PDA

Курсы | Учебные программы | Учебники | Новости | Форум | Помощь



Телефон: +7 (495) 253-9312, 253-9313, факс: +7 (495) 253-9310, email: info@intuit.ru

© 2003-2007, INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование



Содержание раздела