САМОСТОЯТЕЛЬНОЕ ОБУЧЕНИЕ ДЛЯ ВЕБ РАЗРАБОТЧИКОВ
×

JS Учебник

JS Главная JS Введение JS Где установить? JS Вывод JS Заявления JS Синтаксис JS Комментарии JS Переменные JS Let JS Const JS Операторы JS Арифметика JS Присваивание JS Типы данных JS Функции JS Объекты JS События JS Строки JS Методы строк JS Поиск строк JS Шаблоны строк JS Числа JS Методы чисел JS Массивы JS Методы массива JS Сортировка массива JS Итерация массива JS Постоянный массив JS Даты JS Формат дат JS Методы получения дат JS Методы набора дат JS Объекты Math JS Случайные числа JS Булевы JS Сравнения JS Оператор If...Else JS Оператор Switch JS Цикл For JS Цикл For In JS Цикл For Of JS Цикл While JS Оператор Break JS Повторяющиеся JS Наборы JS Карты JS Typeof JS Преобразование JS Битовые JS Выражения JS Ошибки JS Область JS Подъемный JS Строгий JS Ключевое слово this 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/Edge JS История

JS Объекты

Определение объекта Свойства объекта Методы объекта Отображение объекта Доступ объекта Конструкторы объекта Прототипы объекта Повторяющиеся объекты Набор объектов Карты объекта Справочник объектов

JS Функции

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

JS Классы

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

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

JS Обратный вызов JS Асинхронный JS Обещания JS Асинхронный

JS HTML DOM

DOM Введение DOM Методы DOM Документы DOM Элементы DOM HTML DOM Формы DOM CSS DOM Анимация DOM События DOM Прослушиватель DOM Навигация DOM Узлы DOM Коллекция DOM Список узлов

JS Браузер BOM

JS Window JS Экран JS Расположение JS История JS Навигатор JS Предупреждение JS Синхронизация JS Куки

JS Веб APIы

Веб API Введение Веб API История Веб API Хранилище Веб API Работник Веб API Извлечь Веб API Геолокации

JS AJAX

AJAX Введение AJAX XMLHttp AJAX Запрос на сервер AJAX Ответ с сервера AJAX Файл XML AJAX Файл PHP AJAX Файл ASP AJAX База данных AJAX Приложения AJAX Примеры

JS JSON

JSON Введение JSON Синтаксис JSON или XML JSON Типы данных JSON Парсинг JSON Строки JSON Объекты JSON Массивы JSON PHP JSON HTML JSON JSONP

JS или jQuery

jQuery Селекторы jQuery Элементы jQuery CSS jQuery DOM

JS Примеры

JS Примеры JS HTML DOM JS HTML Ввод JS HTML Объекты JS HTML События JS Браузер JS Редактор JS Упражнения JS Викторина JS Сертификат

JS Справочник

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


JavaScript Интерация массива



Методы итерации массива работают с каждым элементом массива.


Array.forEach()

Метод forEach() вызывает функцию (функцию обратного вызова) один раз для каждого элемента массива.

Пример

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);

function myFunction(value, index, array) {
  txt = txt + value + "<br>";
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

В приведенном выше примере используется только параметр value (значение). Пример можно переписать:

Пример

var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);

function myFunction(value) {
  txt = txt + value + "<br>";
}
Попробуйте сами »

Array.forEach() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии:

Да 9.0 Да Да Да

Array.map()

Метод map() создает новый массив, выполняя функцию для каждого элемента массива.

Метод map() не выполняет функцию для элементов массива без значений.

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

В этом примере каждое значение массива умножается на 2:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);

function myFunction(value, index, array) {
  return value * 2;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

Когда функция обратного вызова использует только параметр значения, параметры индекса и массива можно не указывать:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);

function myFunction(value) {
  return value * 2;
}
Попробуйте сами »

Array.map() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да


Array.filter()

Метод filter() создает новый массив с элементами массива, проходит тест.

В этом примере создается новый массив из элементов со значением больше 18:

Пример

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

В приведенном выше примере функция обратного вызова не использует параметры индекса и массива, поэтому их можно не указывать:

Пример

var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);

function myFunction(value) {
  return value > 18;
}
Попробуйте сами »

Array.filter() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Array.reduce()

Метод reduce() запускает функцию для каждого элемента массива, чтобы произвести (уменьшить его до) одно значение.

Метод reduce() работает слева направо в массиве. См. Также reduceRight().

Метод reduce() не уменьшает исходный массив.

В этом примере выполняется поиск суммы всех чисел в массиве:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}
Попробуйте сами »

Обратите внимание, что функция принимает 4 аргумента:

  • Итого (total) (начальное значение / ранее возвращенное значение)
  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

В приведенном выше примере не используются параметры индекса и массива. Его можно переписать так:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction);

function myFunction(total, value) {
  return total + value;
}
Попробуйте сами »

Метод reduce() может принимать начальное значение:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduce(myFunction, 100);

function myFunction(total, value) {
  return total + value;
}
Попробуйте сами »

Array.reduce() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Array.reduceRight()

Метод reduceRight() запускает функцию для каждого элемента массива, чтобы произвести (уменьшить его до) одно значение.

В reduceRight() работает справа налево в массиве. См. Также. reduce().

Метод reduceRight() не уменьшает исходный массив.

В этом примере выполняется поиск суммы всех чисел в массиве:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);

function myFunction(total, value, index, array) {
  return total + value;
}
Попробуйте сами »

Обратите внимание, что функция принимает 4 аргумента:

  • Итого (total) (начальное значение / ранее возвращенное значение)
  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

В приведенном выше примере не используются параметры индекса и массива. Его можно переписать так:

Пример

var numbers1 = [45, 4, 9, 16, 25];
var sum = numbers1.reduceRight(myFunction);

function myFunction(total, value) {
  return total + value;
}
Попробуйте сами »

Array.reduceRight() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Array.every()

Метод every() проверяет, все значения массива проходят тест.

В этом примере проверяется, все ли значения массива больше 18:

Пример

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

Когда функция обратного вызова использует только первый параметр (значение), остальные параметры можно не указывать:

Пример

var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);

function myFunction(value) {
  return value > 18;
}
Попробуйте сами »

Array.every() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Array.some()

Метод some() проверяет, если некоторые значения массива проходят тест.

В этом примере проверяется, не превышают ли некоторые значения массива 18:

Пример

var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

Array.some() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Array.indexOf()

Метод indexOf() ищет массив для значения элемента и возвращает его позицию.

Примечание: первый элемент имеет позицию 0, второй элемент - позицию 1 и так далее.

Пример

Найдите в массиве элемент "Яблоко":

var fruits = ["Яблоко", "Апельсин", "Яблоко", "Манго"];
var a = fruits.indexOf("Яблоко");
Попробуйте сами »

Array.indexOf() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Синтаксис

array.indexOf(item, start)
item Обязательный. Элемент для поиска.
start Необязательный. С чего начать поиск. Отрицательные значения начнутся в данной позиции, считая от конца, и поиск до конца.

Array.indexOf() возвращает -1, если элемент не найден.

Если элемент присутствует более одного раза, он возвращает позицию первого вхождения.


Array.lastIndexOf()

Array.lastIndexOf() то же самое, что и Array.indexOf(), но возвращает позицию последнего вхождения указанного элемента.

Пример

Найдите в массиве элемент "Яблоко":

var fruits = ["Яблоко", "Апельсин", "Яблоко", "Манго"];
var a = fruits.lastIndexOf("Яблоко");
Попробуйте сами »

Array.lastIndexOf() поддерживается во всех браузерах, кроме Internet Explorer 8 или более ранней версии.

Да 9.0 Да Да Да

Синтаксис

array.lastIndexOf(item, start)
item Обязательный. Элемент для поиска
start Необязательный. С чего начать поиск. Отрицательные значения будут начинаться с данной позиции, считая от конца, и поиск до начала

Array.find()

Метод find() возвращает значение первого элемента массива, который проходит тестовую функцию.

В этом примере выполняется поиск (возвращается значение) первого элемента, превышающего 18:

Пример

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

Array.find() не поддерживается в старых версиях браузеров. Ниже перечислены первые версии браузеров с полной поддержкой.

45 12 25 8 32

Array.findIndex()

Метод findIndex() возвращает индекс первого элемента массива, который проходит тестовую функцию.

В этом примере выполняется поиск индекса первого элемента, который больше 18:

Пример

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);

function myFunction(value, index, array) {
  return value > 18;
}
Попробуйте сами »

Обратите внимание, что функция принимает 3 аргумента:

  • Значение элемента (value)
  • Индекс элемента (index)
  • Сам массив (array)

Array.findIndex() не поддерживается в старых версиях браузеров. Ниже перечислены первые версии браузеров с полной поддержкой.

45 12 25 8 32