Если вы хотите работать быстрее, хотите быстрее извлекать значение из структуры данных, тогда вам определенно следует начать использовать 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.