Знакомство с методом at() для массивов JavaScript

Знакомство с методом at() для массивов JavaScript

8 марта 2022 г.

Что такое ES2022?


Для тех, кто не знает, ES2022 ИЛИ EcmaScript 2022 является стандартом для сценариев, разработанным в сотрудничестве с Netscape и Microsoft и в основном производным от Netscape JavaScript, широко используемого языка сценариев, который используется на веб-страницах, чтобы влиять на то, как они выглядят или ведут себя для пользователя.


Это сокращенно ES1, ES2, ES3, ES5 и ES6. С 2016 года новые версии именуются по годам (ECMAScript 2016/2017/2018).


```javascript


const fruit = ['яблоко','банан','манго','заварной крем'];


Теперь предположим, что мы хотим получить доступ к последнему элементу массива фруктов, но что, если вы не знаете длину массива.


Как вы это сделаете?


Что ж, для этого есть разные подходы:


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

```javascript


пусть последнийЭлемент = фрукты[фрукты.длина - 1]; console.log(последний элемент);


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

```javascript


let lastElement = fruit.slice(-1);console.log(lastElement);


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

```javascript


let lastElement = fruit.pop(); console.log(lastElement);


Но если вы посмотрите на этот метод, то увидите, что основная цель этого метода — не вывод последнего элемента массива, а манипулирование им таким образом, что он дает последний элемент массива. Кроме того, иногда это проблемы с производительностью. см. здесь


Итак, ECMA2022 предлагает нам новый метод, то есть at(index).



С помощью at(index) вы можете получить элемент по указанному индексу.
См. пример ниже


```javascript


console.log(фрукты.at(1)); // яблоко


console.log(фрукты.в(-1)); // заварной крем


console.log(фрукты.at(2)); // манго


Работающий jsfiddle здесь :


Интересно, что если вы сделаете fruits.at(-0), это даст вам яблоко.


Итак, веселитесь.


Ваше здоровье!


  • Впервые опубликовано [здесь] (https://dev.to/msabir/es2022-brings-at-for-array-4o5o)*


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE