JavaScript: Массивы

JavaScriptКомментариев нет

Методы и свойства

Ниже будут перечислены некоторые методы и свойства массивов в javascript. Заранее договоримся что у нас объявлена переменная arr и для нее или у нее будем вызывать методы/свойства.

arr.length — возвращает общее число элементов в массиве. Тут есть нюанс, данный параметр возвращает не совсем количество элементов, а последний индекс + 1. Например:

arr.pop() — удаляет последний элемент в массиве и возвращает его индекс.

arr.push(«Помидор») — добавляет элемент в конец массива. Можно добавлять несколько элементов сразу:

arr.shift() — удаляет первый элемент из массива и возвращает его(работает медленней чем arr.pop()).

arr.unshift(«Помидор») — добавляет элемент в начало массива(работает медленней чем arr.push()) и возвращает его индекс. Можно добавлять несколько элементов сразу:

arr.split(‘разделитель’,  long) — делает из строки — массив. Строка разбивается по разделителю, который указывается первым параметром(‘разделитель’). Так же у функции есть второй не обязательный аргумент long, который задает длину нового массива.

arr.join(‘разделитель’) — делает из массива — строку, слов(элементы массива)а в которой будет разделены с помощью разделителя.

delete arr[i] — удаляем элемент массива(как в объекте, массив — это объект). Минус — образуется пробел, индексы не пересчитываются, поэтому лучше использовать метод splice.

arr.splice(index[, deleteCount, elem1, …, elemN]) — splice может удалять, добавлять и заменять элементы массива. Логика работы следующая: удалить deleteCount элементов, начиная с номера index, а затем вставить elem1, …, elemN на их место. Возвращает массив из удалённых элементов.

arr.slice(begin, end) — данный метод копирует часть массива начиная с begin и заканчивая end(не включая последний элемент). Функция работает аналогичным образом как в строках. Если не указывать параметры — копируется весь массив.

arr.reverse() — меняет порядок элементов в массиве на обратный.

arr.concat(value1, value2, … valueN)  — создаёт новый массив, в который копируются элементы из arr, а также value1, value2, … valueN.

arr.indexOf(value) — возвращает индекс элемента массива, если его значение равно value(первое совпадение). Поиск осуществляется с 0(можно указать 2й параметр fromIndex и поиск будет осуществлен с указанной позиции) элемента. Если элемент не найден возвращается -1.

arr.lastIndexOf(value) — возвращает индекс элемента массива, если его значение равно value(первое совпадение). Поиск осуществляется с последнего(можно указать 2й параметр fromIndex и поиск будет осуществлен с указанной позиции) элемента. Если элемент не найден возвращается -1.

Метод Array.isArray()

Для проверки типа на массив есть специальный метод: Array.isArray(arr). Он возвращает true только если arr – массив:

Сортировка

arr.sort() — сортирует массив, по умолчанию все значения массива приравниваются к строкам и сортируются. Функция позволяет использовать свой порядок сортировки.

Своя функция сортировки должна возвращать положительное число/отрицательное число/ноль.

arr.filter(callback) — фильтрует массив с помощью функции callback(item, i, arr), оставляя только те значения, для которых функция возвращает true.

arr.map(callback) — создает новый массив, в котором все элементы arr буду обработаны функцией callback(item, i, arr)

arr.every(callback) — возвращает true если callback вернет true для каждого элемента.

arr.some(callback) — возвращает true если callback вернет true хотя бы для одного элемента массива.

arr.reduce(callback) — используется для последовательной обработки элементов массива с сохранение промежуточного результата. Функция callback(previousValue, currentItem, index, arr) = callback(промежуточный результат, текущий элемент массива, итератор, массив).

arr.reduceRight(callback) — работает также как и  arr.reduce(callback), только обходит массив с права на лева.

 

Работа с массивами в javascript

Перебор элементов циклом FOR

Не используйте for..in для массивов! Он работает медленней + выводит скрытые свойства объекта.

forEach

Метод forEach ничего не возвращает, его используют только для перебора, как более «элегантный» вариант, чем обычный цикл for.

 

Трюки

Укорачиваем(обрезаем) массив

Если изменить значение length, то данные с индексами больше нового значения — удаляются. Например:

Повторение строки 3 раза:

 

Источник:

https://learn.javascript.ru/array


Будь первым кто прокомментирует статью.

Добавить комментарий

Войти с помощью: