Вступление
Массив JavaScript - это тип данных, который состоит из списка элементов. Есть много полезных встроенных методов для работы с массивами в JavaScript. Методы, которые изменяют исходный массив, называются методами * mutator *, а методы, которые возвращают новое значение или представление, называются методами * accessor *. В этом уроке мы сосредоточимся на методах доступа.
Чтобы получить максимальную отдачу от этого учебного пособия, вы должны быть знакомы с созданием, индексацией, изменением и циклическим просмотром массивов, которые вы можете просмотреть в учебном руководстве https://www.digitalocean.com/community/tutorials/understanding -rarays-in-javascript [Понимание массивов в JavaScript].
В этом руководстве рассматриваются методы, которые объединяют массивы, преобразуют массивы в строки, копируют части массива в новый массив и находят индексы массивов.
CONCAT ()
Метод + concat () +
объединяет два или более массивов вместе для формирования нового массива.
В приведенном ниже примере мы создадим два массива типов моллюсков и объединим их в один новый массив.
// Create arrays of monovalves and bivalves
let monovalves = [ "abalone", "conch" ];
let bivalves = [ "oyster", "mussel", "clam" ];
// Concatenate them together into shellfish variable
let shellfish = monovalves.concat(bivalves);
Как только мы вызовем новый массив, мы увидим, что он состоит из комбинации двух исходных массивов:
shellfish;
Output[ 'abalone', 'conch', 'oyster', 'mussel', 'clam' ]
Метод + concat () +
может принимать несколько аргументов, эффективно позволяя объединять множество массивов вместе с помощью одного метода.
присоединиться()
Метод + join () +
преобразует все элементы массива в новую строку.
let fish = [ "piranha", "barracuda", "koi", "eel" ];
Если аргумент не указан, вывод + join () +
будет строкой через запятую без лишних пробелов.
// Join the elements of an array into a string
let fishString = fish.join();
fishString;
Output'piranha,barracuda,koi,eel'
Чтобы включить пробел или другой разделитель, вы можете добавить строку вашего разделителя в качестве параметра в метод + join () +
. Этот параметр будет содержать требуемый разделитель между каждым элементом массива.
// Join the elements of an array into a string
let fishString = fish.join(', ');
fishString;
Output'piranha, barracuda, koi, eel'
В вышеприведенном примере запись + ',' +
с пробелами разделяла элементы массива более читабельным образом. Пустая строка в качестве аргумента полностью удалит запятые по умолчанию.
ломтик()
Метод + slice () +
копирует часть массива в новый массив.
let fish = [ "piranha", "barracuda", "koi", "eel" ];
Предположим, мы хотим скопировать два последних элемента в массиве в новый массив. Мы начнем с порядкового номера первого элемента, который нам нужен, который равен + 2 +
для + koi +
. Мы бы закончили с индексом following последний элемент, который мы хотим. Поскольку последний элемент, + eel +
, имеет номер индекса + 3 +
, мы бы поставили + 4 +
.
// Slice a new array from 2 to 5
let fishWithShortNames = fish.slice(2, 4);
fishWithShortNames;
Output[ 'koi', 'eel' ]
В этом конкретном случае, поскольку + eel +
является последним элементом в массиве, второй аргумент фактически не нужен. + slice () +
начнется с первого индекса и остановится в конце массива, если второй аргумент не указан.
// Slice a new array from 2 to the end of the array
let fishWithShortNames = fish.slice(2);
fishWithShortNames;
Output[ 'koi', 'eel' ]
+ slice () +
не следует путать с https://www.digitalocean.com/community/tutorials/how-to-use-array-methods-in-javascript-mutator-methods#splice () [ метод мутатора + splice () +
], который может добавлять или удалять элементы из исходного массива.
индекс чего-либо()
Метод + indexOf () +
возвращает номер индекса первого экземпляра элемента.
В приведенном ниже примере у нас есть строка, в которой + barracuda +
указан дважды.
let fish = [ "piranha", "barracuda", "koi", "barracuda" ];
Мы будем использовать + indexOf () +
, чтобы найти первый экземпляр.
// Find the first instance of an element
fish.indexOf("barracuda");
Output1
Если данный аргумент является значением, которого нет в массиве, консоль вернет + -1 +
.
fish.indexOf("shark");
Output-1
Метод + indexOf () +
особенно полезен в массивах, которые содержат много элементов.
LastIndexOf ()
Метод + lastIndexOf () +
возвращает номер индекса последнего экземпляра элемента.
Мы можем протестировать один и тот же пример из + indexOf () +
, который включает + barracuda +
дважды.
let fish = [ "piranha", "barracuda", "koi", "barracuda" ];
// Find the last instance of an element
fish.lastIndexOf("barracuda");
Output3
+ lastIndexOf () +
будет искать в массиве, начиная с конца, и возвращать первый найденный индексный номер.
Заключение
В этом руководстве мы рассмотрели основные встроенные методы массива аксессоров в JavaScript. Методы доступа создают новую копию или представление массива, в отличие от изменения или изменения оригинала.
Мы узнали, как объединять массивы вместе, что объединяет их в конец, а также как преобразовывать массивы в строки, разделенные запятыми. Мы также узнали, как копировать части массива в новый массив и находить первый и последний индексы данного элемента в массиве.
Чтобы ознакомиться с основами массивов, прочитайте Understanding Arrays in JavaScript. Чтобы просмотреть полный список всех методов массива, просмотрите ссылку Array в Mozilla Developer Network.