Массивы в JavaScript

Массив - это структура данных, состоящая из набора элементов, каждый из которых идентифицируется по меньшей мере одним индексом или ключом массива. Он используется для хранения набора данных, но часто бывает полезно придумать массив как набор переменных того же типа.

Существует три способа построения массива в JavaScript

  1. Литерал массива, который использует квадратные скобки.
  2. Создавая экземпляр массива напрямую (используя новое ключевое слово).
  3. Конструктор массива, в котором используется новое ключевое слово.

Использование массива Literal

Синтаксис

 
var arrayName=[element1,element1.....elementN];

Пример

 
var days=["Sunday","Monday","Tuesday"];

Создав экземпляр массива напрямую

 
var days = new Array();
days[0] = "Sunday";
days[1] = "Monday";
days[2] = "Tuesday";

Использование Array Constructor

 
var days=new Array("Sunday","Monday","Tuesday");

Тип элемента массива

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

 
var anArray = [500, "car", ["ID", 121], true];

Доступ к элементам массива

Чтобы получить доступ к элементам внутри массива, вам нужно использовать квадратные скобки и индекс массива. Массивы JavaScript начинаются с 0, поэтому первый элемент всегда будет внутри [0].

Пример

 
var days=new Array("Sunday","Monday","Tuesday");
var day_2 = days[1];
alert(day_2);

Выход

 
Monday

Свойство длины

Массивы в JavaScript основаны на нуле. Это означает, что JavaScript начинает отсчет с нуля, когда он индексирует массив. Если массив JavaScript имеет пять элементов, то свойство length для этого массива будет иметь значение 5 (пять). Но если массив JavaScript имеет пять элементов, последний элемент имеет индекс 4. Это связано с тем, что массивы JavaScript основаны на нулевом значении. Свойство length объекта, являющегося экземпляром типа Array, устанавливает или возвращает количество элементов в этом массиве.

 
var days=new Array("Sunday","Monday","Tuesday","wednesday","Thursday");
alert(days.length);

Когда вы запустите указанную выше программу, она вернет 5.

Элементы Looping Array

вы можете использовать «для» для итерации по массивам JavaScript

Пример

 
var days=new Array("Sunday","Monday","Tuesday","wednesday","Thursday");
daysLen = days.length;
for (i = 0; i < daysLen; i++) {
  alert(days[i]);
}

Выход

 
Sunday
Monday
Tuesday
ednesday
Thursday

Другой способ, который вы можете использовать для цикла ...

 
var days=new Array("Sunday","Monday","Tuesday","wednesday","Thursday");
for (let day of days) {
  alert( day );
}

Выход

 
Sunday
Monday
Tuesday
Wednesday
Thursday

Добавить в конец массива

Метод push() добавит элемент в конец массива, а его двойная функция - метод pop() - удалит элемент из конца массива.

Метод push()

 
var days=new Array("Sunday","Monday","Tuesday");
days.push("wednesday");
for (let day of days) {
  alert( day );
}

Выход

 
Sunday
Monday
Tuesday
Wednesday

Удалить из конца массива

Метод pop()

 
var days=new Array("Sunday","Monday","Tuesday","wednesday","Thursday");
days.pop();
days.pop();
for (let day of days) {
  alert( day );
}

Выход

 
Sunday
Monday
Tuesday

Добавить элемент (ы) в начало массива

Использование JavaScript Array unshift() Метод добавления элемента перед массивом.

 
var days=new Array("Monday","Tuesday","wednesday");
days.unshift("Sunday");
for (let day of days) {
  alert( day );
}

Выход

 
Sunday
Monday
Tuesday
Wednesday

Удалить элемент (ы) из передней части массива

 
var days=new Array("Sunday","Monday","Tuesday","wednesday");
days.shift();
for (let day of days) {
  alert( day );
}

Выход

 
Monday
Tuesday
Wednesday

Изменение элементов в массивах

Доступ к элементам массива осуществляется с использованием номера индекса. Используя этот номер индекса, вы можете изменить элемент в массиве.

 
var days=new Array("Sunday","Tuesday","wednesday");
days[0] = "Monday" ;
for (let day of days) {
  alert( day );
}

Выход

 
Monday
Tuesday
Wednesday

Найти индекс элемента в массиве

JavaScript indexOf() метод возвращает индекс первого вхождения значения в массив.

 
var days=new Array("Sunday","Monday","Tuesday","wednesday");
var idx = days.indexOf("Tuesday");
alert(idx);

Вышеуказанная программа возвращает 2.

Как проверить, содержит ли массив объект в JavaScript?

Вы можете использовать следующий код для поиска, если массив содержит определенную строку в JavaScript.

 
var days = ["Sunday", "Monday", "Tuesday"];
var dayIn = (days.indexOf("Friday") > -1);
alert(dayIn);

Вышеприведенный код возвращает «false», потому что «пятница» не содержит массив «дней».

Array.sort

Метод JavaScript Array.sort() сортирует элементы в массиве либо в алфавитном, либо в цифровом, также вы можете сортировать восходящий или нисходящий. Порядок сортировки по умолчанию - алфавитный и восходящий.

 
var days=new Array("Sunday","Monday","Tuesday","wednesday");
days.sort();
alert(days);
days.reverse();
alert(days)

Выход

 
"Sunday","Monday","Tuesday","wednesday"
"wednesday","Tuesday","Monday","Sunday"

Массивы Неопределенные значения

Массивы автоматически растут и динамически масштабируются для размещения любых типов данных, которые добавляются к ним. Поэтому, когда вы добавляете или удаляете элементы из массива, длина массива изменяется по мере необходимости. Когда вы объявляете Array с конструктором, каждый слот будет установлен на «undefined».

 
var days = new Array(4);
days[0] = "Sunday";
days[1] = "Monday";
days[3] = "Wednesday";
alert(days.length); // будет предупреждать 4
alert(days[2]); // будет предупреждать "undefined"

Выход

 
4
undefined

Многомерные массивы

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

 
var multiArr = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];
alert( multiArr[1][1] );

Выше возврата программы 5.

JavaScript toString()

Метод toString() возвращает строковое представление объекта.

 
var val =100;
alert(val.toString());

Источник: http://net-informations.com/js/funda/arrays.htm

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector