Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Объект Array в JavaScript

Читайте также:
  1. JavaScript переменные
  2. Lt;variant>бір қосымшадан екіншісіне объекті ендіру және байланыстыру арқылы жұмыс істеу технологиясы
  3. Multidimensional Arrays
  4. Switch case в JavaScript
  5. The king expected that the troops were properly equipped when they attended muster, whether they had been raised by array or indenture.
  6. Use of Surround Arrays
  7. Анализ входной информации предметной области и выделение информационных объектов

Объект 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 переменные | Типы переменных в JavaScript | Создание функций в JavaScript | Условный оператор в JavaScript | Циклы в JavaScript | Switch case в JavaScript | Объект Date в JavaScript | Объект Number в JavaScript | Объект Window в JavaScript | Объект Document в JavaScript |
<== предыдущая страница | следующая страница ==>
Понятие ООП в JavaScript| Объект String в JavaScript

mybiblioteka.su - 2015-2024 год. (0.006 сек.)