Получаем последний элемент массива в JavaScript

Получаем последний элемент массива в JavaScript

Получаем последний элемент массива в JavaScript

Массив в JavaScript — это объект-контейнер, содержащий фиксированное количество значений одного типа. Длина массива, после его создания, останется постоянной. В данной статье мы рассмотрим различные методы доступа к последнему элементу массива.

Как получить последний элемент массива?

1 — Используем метод slice() массива для возврата определенного элемента.

2 — Извлекаем последний элемент, используя массив отрицательных индексов array.slice(-1).

3 — Сохраняем искомое значение в переменной.

Далее мы рассмотрим варианты реализации кода.

Использование свойства длины массива.

Свойство length возвращает количество элементов в массиве. Вычитание 1 из длины массива дает индекс последнего элемента массива, с помощью которого можно получить доступ к последнему элементу. Причина, по которой мы вычитаем 1 из длины, заключается в том, что в JavaScript нумерация индексов массива начинается с 0. т. е. индекс 1-го элемента будет равен 0. Поэтому индекс последнего элемента будет равен длине массива-1.


let array = [2, 4, 6, 8, 10, 12, 14, 16];
let lastElem = array[array.length - 1];

console.log(lastElem);

//Вывод: 16

Использование метода slice().

Метод slice() возвращает определенные элементы из массива в виде нового объекта массива. Этот метод выбирает элементы, начинающиеся с заданного начального индекса и заканчивающиеся заданным конечным индексом, исключая элемент в конечном индексе. Метод slice() не изменяет существующий массив. Предоставление одного значения индекса возвращает элемент в этой позиции, а отрицательное значение индекса вычисляет индекс с конца массива.


let array = [2, 4, 6, 8, 10, 12, 14, 16];
let lastElem = array.slice(-1);

console.log(lastElem);

//Вывод: 16

Использование метода pop().

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


let array = [2, 4, 6, 8, 10, 12, 14, 16];
let lastElem = array.pop();

console.log(lastElem);

//Вывод: 16

Давайте теперь используем все три метода для массива, чтобы получить последний элемент и проверить, какой метод является самым быстрым:


let array = [2, 4, 6, 8, 10, 12, 14, 16];

console.time('array length property');
let lastElem = array[array.length - 1];
console.log(lastElem);
console.timeEnd('array length property');

console.time('array slice method');
let lastElem1 = array.slice(-1);
console.log(lastElem1);
console.timeEnd('array slice method');

console.time('array pop method');
let lastElem2 = array.pop();
console.log(lastElem2);
console.timeEnd('array pop method');

//Вывод:

//16
//array length property: 7 ms
//[ 16 ]
//array slice method: 5 ms
//16
//array pop method: 2 ms

И как вы можете видеть, метод pop() является самым быстрым. Вы можете использовать его, если вас устраивает изменение массива. Если вы не хотите изменять массив, то используйте метод slice().

Источник