Читайте также:
|
|
Объект Array в JavaScript позволяет создавать массивы. Также он содержит свойства и методы, позволяющие управлять массивом. Именно о свойствах и методах объекта Array в JavaScript я и поведаю.
Начнём с конструктора. Их несколько. Вот первый из них:
var arr = new Array();
Здесь создаётся массив, вообще говоря, произвольной длины и абсолютно пустой. Дальше мы можем его заполнять так, как я Вам показывал ранее. Рассмотрим второй вид конструктора:
var arr = new Array(5);
Этот конструктор создаёт массив из пяти элементов. И, наконец, третий вид конструктора:
var arr = new Array(3, 1, "str", "15", -5);
В данном случае создаётся массив из пяти уже заданных элементов. Это все три конструктора, которые нам предоставляет класс Array в JavaScript.
Теперь перейдём к свойствам. Рассмотрим всего одно свойство, но самое важное и безумно часто используемое. Вот оно:
var arr = new Array(1, 0, -4, 10, 12);
document.write(arr.length);
Свойство length содержит длину массива. Очевидно, что используется данное свойство преимущественно в циклах, где перебираются элементы массива. Поэтому не буду говорить о том, как важно помнить это свойство.
Теперь обсудим методы объекта Array. Начнём с метода join():
document.write(arr.join());
Данный метод возвращает строку, составленную из элементов массивов, разделённых запятой. Если использовать параметр в методе join(), то, соответственно, вместо запятой будет этот параметр. Например, так:
document.write(arr.join("---"));
На выходе получится следующее: "1---0----4---10---12".
Ещё один метод используется, когда необходимо добавить несколько значений в массив. Конечно, мы можем написать несколько строк, поочерёдно записывая все элементы. Однако, разработчики нам позволяют отделаться всего одной строкой:
arr.concat(3, 1, new Array(3, -1));
Как видите, тут мы добавили не только два числа, но ещё и целый массив в исходный массив arr, тем самым, резко сократив запись.
Метод pop() вытаскивает последний элемент из массива и возвращает его. То есть у массива исчезает последний элемент, который метод pop() возвращает. Вот пример:
var last_element = arr.pop();
document.write(last_element);
Здесь из массива исчезает последний элемент, который мы записываем в переменную last_element и выводим в окно браузера.
Метод shift() работает аналогично, только исчезает не последний элемент, а первый, при этом все остальные элементы сдвигаются на одну позицию вниз.
var first_element = arr.shift();
document.write(first_element);
Здесь всё достаточно прозрачно, поэтому не буду комментировать.
Для того чтобы развернуть массив (то есть первый элемент станет последним, второй элемент станет предпоследним и так далее) используется метод reverse(). Пример его использования:
var a = arr.reverse();
В данном примере метод возвращает перевёрнутый массив arr и записывает его в массив a.
Очень полезный метод, позволяющий получить новый массив из части другого массива. Сразу приведу пример, а потом прокомментирую его:
var a = arr.slice(2, 4);
В этом примере мы присваиваем массиву a часть массива arr, которая начинается со 2-го элемента (включительно) до 4-ого (исключительно). Например, если массив arr был с такими значениями: 2, 4, 5, 1, 2. То массив а будет иметь следующие значения: 5, 1. Также не забывайте, что нумерация начинается с 0. Поэтому элемент с индексом " 2 " - это элемент со значением 5.
Если в методе slice() указать только один параметр, то будет браться массив начиная с индекса, указанного в параметре и до конца массива.
И последний метод, который мы с Вами разберём - это метод sort(). Я его оставил на закуску, так как он, пожалуй, самый важный и сложный. Данный метод сортирует массив. Использовать метод sort() легко:
arr.sort();
Тут всё просто: массив сортируется, однако, какое правило сортировки? По алфавиту, по числам, по возрастанию, по убыванию и прочее. В этом и состоит сложность. Поэтому разработчики этого метода предоставили нам задать эти правила, добавив один необязательный параметр в метод sort(), который должен быть именем функции, описывающей " правила сортировки ".
Эта функция должна определять критерии, при которых один элемент больше другого. Давайте, например, сделаем так: если элемент равен " 5 ", то тогда одно заведомо больше другого. Если ни один из элементов не равен 5, то тогда сравниваем по обычным правилам. Давайте сразу напишу пример, а потом его поясню:
function myCompare(x, y) {
if (x == 5) return 1;
if (y == 5) return -1;
if (x > y) return 1;
else if (x == y) return 0;
else return -1;
}
Если x больше y, то возвращается 1, если равны, то возвращается 0, если y больше x, то возвращается -1. И на основании этого, мы пишем правила, при которых возвращать 1, 0 или -1. И теперь мы можем, используя это " правило сортировки ", воспользоваться методом sort() в полную силу:
arr.sort(myCompare);
Это все самые основные конструкторы, свойства и методы объекта Array в JavaScript. Разумеется, запоминать их все не нужно. Главное лишь понять возможности, которые предоставляют нам разработчики JavaScript при работе с массивами. Со временем Вы их и так запомните, а пока этого не случилось не забывайте про справочник.
Дата добавления: 2015-10-31; просмотров: 124 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Понятие ООП в JavaScript | | | Объект String в JavaScript |