Получаем последний элемент массива в 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().
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.