Если вы хотите работать быстрее, хотите быстрее извлекать значение из структуры данных, тогда вам определенно следует начать использовать Map в своих проектах JavaScript.

Привет,

Я Химаншу, и в этом блоге я дам вам все знания, которые вам понадобятся, чтобы начать использовать класс Map в вашем следующем проекте JavaScript. В этом блоге я расскажу вам
- Почему вам не следует использовать простые объекты в качестве карты?
- Что такое класс Map в JavaScript?
- Метод получения и установки карты?
– Почему вам следует использовать класс Map?

Итак, давайте начнем наш блог.

Введение

Когда вы слышите слово Map в JavaScript, первое, что приходит на ум, это Map — операция, которая преобразует структуру данных, применяя функцию к ее элементам.

Но позвольте мне вас прояснить. Здесь мы обсуждаем карту (существительное), которая представляет собой структуру данных, которая связывает значения (ключи) с другими значениями.

Нужна ваша помощь!

Недавно я создал проект, который является клоном Typeform. И запустили его в Peerlist Project Spotlight.
Было бы здорово, если бы вы проголосовали за мой проект.

Проект: Формирование шрифта

Большое спасибо!
Пожалуйста, продолжайте чтение сейчас.

Почему вы не должны использовать простые объекты в качестве карты?

Итак, под простым объектом я подразумеваю, когда мы создаем объект, используя такое выражение: let ages = {}.

Давайте создадим простой объект возраст, который будет хранить возраст некоторых учеников,

> let ages = {
   Boris: 28,
   John: 29
  }

Теперь давайте поиграем с нашим объектом ages.

Пожалуйста, просмотрите приведенный ниже фрагмент, и вы также поиграете с объектом ages в своей консоли. Поскольку лучший способ научиться — это практиковать:

> ages.Boris
< 28
>
>
> "John" in ages   // we are checking keys of ages using "in" operator
< true
>
>
> "Dan" in ages
< false
>
>
> "toString" in ages
< true

Теперь, если вы заметили, что это верно для «toString» в возрасте. Итак, это означает, что у нас есть toString в качестве ключа в возрасте, но мы не определили никакой toString в возрасте, поэтому откуда он берется?

Я не буду вдаваться в его глубокие объяснения, но настоятельно рекомендую вам узнать больше об этом самостоятельно.

Причина «toString» заключается в свойстве прототипа веков. В JavaScript большинство объектов имеют предопределенное свойство прототипа, которое является объектом.

И как работает поиск имени свойства в объекте, он сначала проверит имя свойства в ключах объявленного объекта, а затем проверит имя свойства в ключах объекта-прототипа. И в нашем случае оттуда идет toString.

Итак, вы увидели, что использование простых объектов в качестве карт опасно. И вам следует избегать использования простых объектов для карты.

Что такое класс Map в JavaScript?

Из предыдущего раздела мы увидели, что не следует использовать простые объекты в качестве карты. К счастью, в JavaScript есть встроенный класс Map. Под встроенным я подразумеваю, что вам не нужно определять класс карты, чтобы использовать его.

Класс Map в JavaScript предоставляет функциональные возможности для работы со структурой данных Map без особых усилий. Чтобы создать экземпляр класса Map, вы можете сделать это:

> let ages = new Map();

Это создаст экземпляр Map.

Получить и установить метод карты?

Чтобы установить ключ и его значение в возрастах, у Map есть метод set. Он принимает ключ и его значение. Вы можете использовать его следующим образом:

> ages.set("Boris", 28)
>
>
> ages.set("John", 29)

А чтобы получить значение, вы можете использовать метод get:

> ages.get("Boris")
< 28
>
>
> ages.get("John")
< 29

Почему вы должны использовать класс Map?

Проблема с Plain Objects заключалась в том, что он содержал некоторые предопределенные ключи в объектах, которые нам не нужны. Итак, чтобы справиться с этим, мы обсудили, что нам следует использовать встроенный класс Map. Итак, давайте теперь проверим, что происходит, когда мы проверяем «toString» в экземпляре Map.

Карта имеет метод с именем has. Он проверяет, находится ли ключ в Map или нет. Итак, если мы проверим «toString»:

> ages.has("toString")
< false

Итак, когда мы используем класс Map для работы со структурой данных Map. Он отлично работает.

Если вы выбрали Plain Object для работы с Map, то для проверки ключей в Object используйте свойство hasOwnProperty объекта Object.

Заключение

Надеюсь, что эти знания о Map помогут вам, и вы начнете использовать Map в своих проектах.

Спасибо, что дочитали до конца. Я встречусь с вами в следующем блоге, а пока позаботьтесь о своем здоровье и своей семье. И еще, я хотел бы связаться с вами в Твиттере.

Рекомендации

Идея для этого блога пришла от Eloquent JavaScript, я читаю его сейчас и настоятельно рекомендую вам прочитать его, если вы новичок в JavaScript.

Вы также можете ознакомиться с этим MDN doc of Map.