Учебник по JS

ГЛАВНАЯ JS Введение JS Куда Вывод JS Заявления JS JS-синтаксис JS-комментарии JS-переменные JS Пусть Константа JS JS-операторы JS-арифметика Назначение JS JS-типы данных JS-функции JS-объекты JS-события JS-строки Строковые методы JS Поиск строки JS Шаблоны строк JS JS-номера Методы номеров JS JS-массивы Методы массива JS Сортировка массива JS Итерация массива JS Константа массива JS JS-даты Форматы даты JS Методы получения даты JS Методы установки даты JS JS-математика JS Случайный JS Булевы значения Сравнение JS JS-условия JS-переключатель JS цикл для Цикл JS для входа Цикл JS для Цикл JS во время Перерыв JS JS-итерации JS-наборы JS-карты JS Typeof Преобразование типов JS JS побитовый JS регулярное выражение JS-ошибки Область JS JS-подъем Строгий режим JS JS это ключевое слово Функция стрелки JS JS-классы JS JSON JS-отладка Руководство по стилю JS Лучшие практики JS JS-ошибки JS-производительность Зарезервированные слова JS

JS-версии

JS-версии JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE/пограничный История JS

JS-объекты

Определения объектов Свойства объекта Методы объекта Отображение объекта Средства доступа к объектам Конструкторы объектов Прототипы объектов Итерации объектов Наборы объектов Карты объектов Ссылка на объект

JS-функции

Определения функций Параметры функции Вызов функции Вызов функции Функция Применить Закрытие функций

JS-классы

Введение в класс Наследование классов Статический класс

JS асинхронный

Обратные вызовы JS JS асинхронный JS-обещания JS асинхронный/ожидание

JS HTML DOM

Дом Введение DOM-методы Документ DOM DOM-элементы DOM HTML DOM-формы ДОМ CSS DOM-анимации События ДОМ Слушатель событий DOM DOM-навигация DOM-узлы Коллекции DOM Списки узлов DOM

Спецификация браузера JS

JS-окно JS-экран Местоположение JS История JS JS-навигатор Всплывающее оповещение JS JS Тайминг JS-куки

JS-веб-API

Введение в веб-API API веб-форм API истории веб-поиска API веб-хранилища API веб-работника API веб-выборки API веб-геолокации

JS АЯКС

Введение в АЯКС AJAX XMLHttp АЯКС-запрос AJAX-ответ XML-файл AJAX АЯКС PHP АЯКС АСП База данных AJAX AJAX-приложения Примеры AJAX

JS JSON

Введение в JSON Синтаксис JSON JSON против XML Типы данных JSON Анализ JSON Строковая JSON JSON-объекты JSON-массивы JSON-сервер JSON PHP JSON HTML JSON JSONP

JS против JQuery

Селекторы jQuery JQuery HTML jQuery CSS JQuery DOM

JS-графика

JS-графика JS Холст JS сюжет JS Chart.js JS Google Диаграмма JS D3.js

JS-примеры

JS-примеры JS HTML DOM JS HTML-ввод HTML-объекты JS HTML-события JS JS-браузер JS-редактор JS-упражнения JS-викторина JS-сертификат

JS-ссылки

Объекты JavaScript HTML DOM-объекты


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


Преобразование массивов в строки

Метод JavaScript toString()преобразует массив в строку значений массива (разделенных запятыми).

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

Результат:

Banana,Orange,Apple,Mango

Метод join()также объединяет все элементы массива в строку.

Он ведет себя точно так же toString(), но дополнительно можно указать разделитель:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.join(" * ");

Результат:

Banana * Orange * Apple * Mango

Поппинг и толкание

При работе с массивами легко удалять элементы и добавлять новые элементы.

Вот что такое выталкивание и нажатие:

Извлечение элементов из массива или помещение элементов в массив.



Массив JavaScript pop()

Метод pop()удаляет последний элемент из массива:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.pop();

Метод pop()возвращает значение, которое было «выскочило»:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits.pop();

Массив JavaScript push()

Метод push()добавляет новый элемент в массив (в конце):

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");

Метод push()возвращает новую длину массива:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let length = fruits.push("Kiwi");

Перемещение элементов

Сдвиг эквивалентен выталкиванию, но работает с первым элементом, а не с последним.


Сдвиг массива JavaScript()

Метод shift()удаляет первый элемент массива и «сдвигает» все остальные элементы на меньший индекс.

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift();

Метод shift()возвращает значение, которое было "смещено":

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits.shift();

Массив JavaScript не сдвигается()

Метод unshift()добавляет новый элемент в массив (в начале) и «не сдвигает» старые элементы:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon");

Метод unshift()возвращает новую длину массива.

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon");

Изменение элементов

Доступ к элементам массива осуществляется по их порядковому номеру :

Индексы массива начинаются с 0:

[0] — первый элемент массива
[1] — второй
[2] — третий...

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[0] = "Kiwi";

Длина массива JavaScript

Свойство lengthпредоставляет простой способ добавления нового элемента в массив:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits[fruits.length] = "Kiwi";

Удалить массив JavaScript()

Предупреждение !

Элементы массива можно удалить с помощью оператора JavaScript delete.

Использование deleteоставляет undefinedдыры в массиве.

Вместо этого используйте pop() или shift().

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
delete fruits[0];

Слияние (объединение) массивов

Метод concat()создает новый массив путем слияния (объединения) существующих массивов:

Пример (объединение двух массивов)

const myGirls = ["Cecilie", "Lone"];
const myBoys = ["Emil", "Tobias", "Linus"];

const myChildren = myGirls.concat(myBoys);

Метод concat()не изменяет существующие массивы. Он всегда возвращает новый массив.

Метод concat()может принимать любое количество аргументов массива:

Пример (объединение трех массивов)

const arr1 = ["Cecilie", "Lone"];
const arr2 = ["Emil", "Tobias", "Linus"];
const arr3 = ["Robin", "Morgan"];
const myChildren = arr1.concat(arr2, arr3);

Метод concat()также может принимать строки в качестве аргументов:

Пример (объединение массива со значениями)

const arr1 = ["Emil", "Tobias", "Linus"];
const myChildren = arr1.concat("Peter"); 

Сращивание и нарезка массивов

Метод splice()добавляет новые элементы в массив.

Метод slice()вырезает часть массива.


Сращивание массива JavaScript()

Этот splice()метод можно использовать для добавления новых элементов в массив:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 0, "Lemon", "Kiwi");

Первый параметр (2) определяет положение, в котором должны быть добавлены (вставлены) новые элементы .

Второй параметр (0) определяет , сколько элементов нужно удалить .

Остальные параметры ("Лимон", "Киви") определяют добавляемые новые элементы .

Метод splice()возвращает массив с удаленными элементами:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 2, "Lemon", "Kiwi");

Использование splice() для удаления элементов

С умной настройкой параметров вы можете использовать splice()для удаления элементов, не оставляя «дыр» в массиве:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(0, 1);

Первый параметр (0) определяет позицию, в которую должны быть добавлены (вставлены) новые элементы.

Второй параметр (1) определяет , сколько элементов нужно удалить .

Остальные параметры опущены. Новые элементы добавляться не будут.


Срез массива JavaScript()

Метод slice()вырезает часть массива в новый массив.

В этом примере часть массива вырезается, начиная с элемента массива 1 ("оранжевый"):

Пример

const fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
const citrus = fruits.slice(1);

Примечание

Метод slice()создает новый массив.

Метод slice()не удаляет элементы из исходного массива.

В этом примере часть массива вырезается, начиная с элемента массива 3 ("Apple"):

Пример

const fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
const citrus = fruits.slice(3);

Метод slice()может принимать два аргумента, например slice(1, 3).

Затем метод выбирает элементы из начального аргумента и до (но не включая) конечного аргумента.

Пример

const fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
const citrus = fruits.slice(1, 3);

Если конечный аргумент опущен, как в первых примерах, slice() метод вырезает остальную часть массива.

Пример

const fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
const citrus = fruits.slice(2);

Автоматическая toString()

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

Это всегда так, когда вы пытаетесь вывести массив.

Эти два примера дадут один и тот же результат:

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

Пример

const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;

Примечание

Все объекты JavaScript имеют метод toString().


Поиск максимального и минимального значений в массиве

Встроенных функций для поиска наибольшего или наименьшего значения в массиве JavaScript нет.

Вы узнаете, как решить эту проблему в следующей главе этого руководства.


Сортировка массивов

Сортировка массивов рассматривается в следующей главе этого руководства.

Полный справочник массивов

For a complete Array reference, go to our:

Complete JavaScript Array Reference.

The reference contains descriptions and examples of all Array properties and methods.

Test Yourself With Exercises

Exercise:

Use the correct Array method to remove the last item of the fruits array.

const fruits = ["Banana", "Orange", "Apple"];
;