Как использовать методы массива в JavaScript: методы доступа

Вступление

Массив 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.