Yutex - Платный хостинг PHP.
Advego.ru - система покупки и продажи контента для сайтов, форумов и блогов

Технические фишки инфобизнеса 2014

Статьи для сайтов!!!
Массивы - Метод splice Массивы – ещё методы Многомерные Массивы

Другие методы для работы с Массивами

Массивы в JavaScript и их методы

Урок №4 Массивы – ещё методы

Количество просмотров: 503

Эта тема посвящена ещё нескольким методам, которые часто используются и могут быть полезны при работе с Массивами в JavaScript.

Здесь мы рассмотрим следующие методы:

  • reverse - меняет порядок элементов Массива;

  • sort - сортировка элементов Массива;

  • join - устанавливает тип разделителя элементов;

  • concat - объединение Массивов;

  • slice - копирование элементов Массива;

Метод reverse - меняем порядок элементов Массива

Метод reverse - меняем порядок элементов Массива

Начнём, пожалуй, с метода reverse. Для демонстрации его работы нам понадобиться Массив. Давайте снова обратимся к Массиву «Друзья» из прошлой темы.

Для тех, кто знаком с понятием «реверс» (в данном случае - обратный, противоположный) не сложно догадаться, что делает метод reverse: если можно так выразиться, он переворачивает Массив. Или меняет порядок его элементов на противоположный.

При этом последний элемент Массива становиться первым, предпоследний вторым и так далее до первого элемента, который становится последним.

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий", " Настя", " Павел"];

document.write(friends + "<p>");

friends.reverse(); // Меняем порядок элементов Массива...

document.write(friends);

</script>

Алексей, Вячеслав, Григорий, Настя, Павел

Павел, Настя, Григорий, Вячеслав, Алексей

Комментировать данный пример, где демонстрируется работа метода reverse, применительно к Массивам в JavaScript я не буду, так как здесь итак всё просто и ясно.

Хотя здесь можно отметить тот момент, что этот же код можно было записать немного компактнее/короче. И мы увидим тот же результат.

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий", " Настя", " Павел"];

document.write(friends + "<p>");

document.write(friends.reverse());

</script>

Алексей, Вячеслав, Григорий, Настя, Павел

Павел, Настя, Григорий, Вячеслав, Алексей

Метод sort - сортировка элементов Массива

Метод sort - сортировка элементов Массива

Метод sort занимается сортировкой элементов Массива. Здесь всё просто. Возьмём для примера Массив «Буквы» и расположим его элементы в произвольном порядке. После чего применим к нему метод sort.

<script type="text/javascript">

var letters = [" С", " А", " К", " В", " О", " Я", " Ж"];

document.write(letters + "<p>");

document.write(letters.sort()); // Сортируем порядок элементов Массива...

</script>

С, А, К, В, О, Я, Ж

А, В, Ж, К, О, С, Я

Как видите, метод sort отсортировал элементы Массива, расположив их в алфавитном порядке. Этот метод хорошо подходит для сортировки Массивов, содержащих строковые элементы.

Для чисел он уже подходит меньше, так как при использовании метода sort идёт сравнение элементов Массива по первому знаку. Рассмотрим ещё один пример. Будем работать с Массивом «Числа».

<script type="text/javascript">

var number = [" 1390", " 45", " 870", " 256", " 7", " 35600", " 17"];

document.write(number + "<p>");

document.write(number.sort()); // Сортируем порядок элементов Массива...

</script>

1390, 45, 870, 256, 7, 35600, 17

1390, 17, 256, 35600, 45, 7, 870

Как видите, метод sort отсортировал элементы Массива, в данном случае ЧИСЛА, не по возрастанию и не по убыванию, как можно было бы ошибочно ожидать, а исключительно ориентируясь на первые знаки элементов - на первые ЦИФРЫ чисел.

Это хорошо видно, если взять числа 1390 и 17 из примера. 17 меньше 1390. Но при сортировке 17 стоит на втором месте, как будто это число наоборот больше! Здесь нужно обратить внимание на первые и вторые цифры этих чисел. 1 = 1, но 3 меньше 7, поэтому метод sort ставит на первое место 1390, а потом 17. Проанализируйте далее вывод элементов (чисел) самостоятельно...

Метод join - разделитель элементов Массива

Метод join - разделитель элементов Массива

Метод join - служит для указания типа разделителя между элементами Массива. По умолчанию при выводе элементов Массива на экран, они отделены друг от друга запятой.

Так вот метод join позволяет указать иной разделитель. Это может быть точка, нижнее подчёркивание, точка с запятой и т.п.

<script type="text/javascript">

var letters = [" С", " А", " К", " В", " О", " Я", " Ж"];

document.write(letters + "<p>");

document.write(letters.join(".")); // Указываем в качестве разделителя Точку...

document.write("<p>" + letters.join("_")); /* Указываем в качестве разделителя символ подчёркивания... */

</script>

С, А, К, В, О, Я, Ж

С. А. К. В. О. Я. Ж

С_ А_ К_ В_ О_ Я_ Ж

Вот так работает метод join применительно к Массивам в JavaScript. В примере в качестве разделителя между элементами Массива сначала мы указали точку, а затем символ подчёркивания.

Метод concat - объединение Массивов

Метод concat - объединение Массивов

Метод concat позволяет объединить Массивы. Посмотрим, как он работает.

Допустим, у нас есть два Массива «Друзей»

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий"];

var friends2 = [" Яков", " Светлана"];

</script>

Сначала мы можем попытаться их «объединить» при помощи операции сложения. Давайте посмотрим, что из этого выйдет.

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий"];

var friends2 = [" Яков", " Светлана"];

var total = friends + friends2; // Соединяем Массивы...

document.write(total);

</script>

Алексей, Вячеслав, Григорий Яков, Светлана

Что мы в результате видим? Казалось бы, Массивы объединены. Но это не так! Обратите внимание на элементы " Григорий" и " Яков". При выводе на экран между ними нет разделителя - ЗАПЯТОЙ. То есть сначала идёт первая группа Друзей (элементов Массива), отделённых друг от друга запятой, а затем, без разделителя, начинается вывод второй группы.

Выходит, что получился не единый Массив, как это было нужно, а произошло именно соединение Массивов. Это нам не подходит, так как Мы хотим объединить, сделать единый Массив из двух.

Теперь давайте применим метод concat.

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий"];

var friends2 = [" Яков", " Светлана"];

var total = friends.concat(friends2); // Объединяем Массивы!!!

document.write(total);

</script>

Алексей, Вячеслав, Григорий, Яков, Светлана

В данном случае, как видите, все элементы Массива при выводе отделены друг от друга запятой. Это говорит о том, что при помощи метода concat можно объединять несколько Массивов в один.

Метод slice - копирование элементов Массива

Метод slice - копирование элементов Массива

Метод slice позволяет копировать необходимое число элементов Массива (нужный нам участок) и формировать из них новый Массив. Исходный Массив при этом остаётся неизменным.

Возьмём для примера Массив «Друзья»

В качестве параметра метода slice выступает одно или два числовых значения.

Если мы указываем одно значение, например 1, то этим самым в новый Массив мы копируем все элементы текущего Массива, начиная с элемента с индексом 1. (Напоминаю, что нумерация элементов Массива начинается с 0).

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий", " Настя", " Павел"];

var bestFriends = friends.slice(1); /*//Копируем в массив bestFriends все элементы Массива friends, начиная с элемента c индексом 1*/

document.write(friends + "<p>");

document.write(bestFriends);

</script>

Алексей, Вячеслав, Григорий, Настя, Павел

Вячеслав, Григорий, Настя, Павел

Если мы указываем два значения в параметрах метода slice, например 1 и 3, то этим самым в новый Массив мы копируем все элементы текущего Массива, начиная с элемента с индексом 1 до элемента с индексом 3 не включительно. То есть элемент с индексом 3 в вновь сформированный Массив не попадает !!! (Напоминаю, что нумерация элементов Массива начинается с 0).

<script type="text/javascript">

var friends = [" Алексей", " Вячеслав", " Григорий", " Настя", " Павел"];

var bestFriends = friends.slice(1, 3); /*//Копируем в массив bestFriends все элементы Массива friends, начиная с элемента c индексом 1 и до элемента с индексом 3 не включительно!*/

document.write(friends + "<p>");

document.write(bestFriends);

</script>

Алексей, Вячеслав, Григорий, Настя, Павел

Вячеслав, Григорий

Главная Изучаем JavaScript Массивы – ещё методы Многомерные Массивы

Ваши комментарии к уроку:

Комментариев нет...

Добавить комментарий:

Ваше Имя:*
Комментарий:*
Ответьте на вопрос: *
Сколько дней в Високосном году?
* - поля обязательные для заполнения.
JavaScript
Частота просмотра уроков
Дизайн сайтов
ПОИСК ПО САЙТУ:

Моё имя Антон. Связаться со мною Вы можете по e-mail: averagev@mail.ru