Карта против объекта в JavaScript

Karta Protiv Ob Ekta V Javascript



карта ' и ' Объект ” — это две распространенные структуры данных в JavaScript, используемые для хранения пар ключ-значение. Карта используется, когда вам нужна структура данных, которая может хранить любой тип данных в качестве ключа или значения, и вам нужен упорядоченный набор пар ключ-значение. Пока Object используется, когда вам нужно хранить только строковые ключи.

Этот пост объяснит разницу между Map и Object в JavaScript.

Как определить объект в JavaScript?

В JavaScript объект представляет собой набор свойств, каждое из которых имеет пару ключ-значение. “ ключ ' это ' имя ', и ' ценить ” — это «значение» ключа. Объекты могут представлять объекты реального мира, такие как автомобиль, человек или банковский счет. Они также могут представлять более абстрактные объекты, такие как математическая точка в пространстве, цвет или дата.







Синтаксис



Объект можно создать, используя скобки {} или конструктор объекта. Используя буквенное обозначение или скобки, используйте следующий синтаксис:



константа объект '=' {
ключ : ценить,
ключ : ценить
}

Создание объекта с помощью конструктора объектов или « новый ключевое слово, используйте следующий синтаксис:





константа объект '=' новый Объект ( ) ;

объект. ключ '=' ценить ;

Примечание: Имейте в виду, что ключи или имена свойств объекта должны быть строкой.

Пример 1. Создание объекта с использованием литеральной записи в JavaScript

В следующем примере мы создадим объект с именем « стандартный объект ” в буквальном обозначении или скобках:



переменная стандартного объекта '=' {
имя : 'Джон' ,
возраст : 18 ,
роллно : 25 ,
стандартный : 9
}

Выведите объект на консоль:

консоль. бревно ( стандартный объект ) ;

Выход

Пример 2. Создание объекта с помощью конструктора объектов в JavaScript

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

константа стандартный объект '=' новый Объект ( ) ;

Теперь добавьте свойства (ключ-значение) объектов, используя запись через точку (.):

стандартный объект. имя '=' 'Блядь' ;

стандартный объект. возраст '=' 19 ;

стандартный объект. роллно '=' пятнадцать ;

стандартный объект. стандартный '=' 10 ;

Наконец, отобразите объект на консоли, используя « console.log() метод:

консоль. бревно ( стандартный объект ) ;

Выход

Как определить карту в JavaScript?

В JavaScript « карта ” — это структура данных, которая содержит пары ключ-значение, подобные объекту. Это позволяет вам связать данные с ключами и получить данные позже с помощью ключей. Карты можно использовать для реализации словарей, хэш-таблиц и других структур данных, которые сопоставляют ключи со значениями.

Синтаксис

Для инициализации Map используйте следующий синтаксис:

константа карта '=' новый карта ( [

[ 'ключ' , 'ценить' ] ,

[ 'ключ' , 'ценить' ]

] ) ;

Вы также можете создать карту с помощью конструктора карты или с помощью нового оператора и установить значения, используя « набор() метод:

константа карта '=' новый карта ( ) ;

карта. набор ( 'ключ' , 'ценить' ) ;

Пример: создание карты в JavaScript

В данном примере мы создадим карту, используя оба синтаксиса.

Создайте карту, используя метод инициализации. Здесь мы будем устанавливать ключи в виде строки, в то время как вы можете установить ключи на карте любого типа:

константа картаStd '=' новая карта ( [
[ 'имя' , 'Джон' ] ,
[ 'возраст' , 18 ] ,
[ 'роллно' , 25 ] ,
[ 'стандарт' , 9 ] ,
] ) ;

Или создайте карту, вызвав конструктор карты или новое ключевое слово/оператор:

константа картаStd '=' новый карта ( ) ;

Задайте значения в Map в паре ключ-значение, используя « набор() метод:

картаStd. набор ( 'имя' , 'Джон' ) ;

картаStd. набор ( 'возраст' , 18 ) ;

картаStd. набор ( 'роллно' , 25 ) ;

картаStd. набор ( 'стандарт' , 9 ) ;

Чтобы распечатать карту на консоли, используйте кнопку « записи() ” метод с “ для-из ' петля:

для ( константа [ ключ, значение ] картыStd. записи ( ) ) {

консоль. бревно ( `$ { ключ } : $ { ценить } ` ) ;

}

Или для доступа к значению любого конкретного ключа/свойства используйте « получать() метод:

консоль. бревно ( 'Роллно' + картаStd. получать ( 'имя' ) + ' является ' + картаStd. получать ( 'роллно' ) ) ;

В выводе указаны все свойства карты и значение конкретного свойства:

Карта против объекта в JavaScript

Основное различие между Картой и Объектом заключается в следующем:

карта Объект
Он был представлен в ECMAScript 6 в 2015 году. JavaScript представил тип данных Object в своей первой версии (ECMAScript 1), выпущенной в 1997 году.
Карта позволяет использовать ключи любого типа данных (например, объекты, функции, числа и т. д.). Ключи объекта должны быть строками.
Доступ к свойствам карты можно получить с помощью метода get(). Доступ к свойствам объекта можно получить, используя запись через точку или квадратную скобку.
Карта имеет встроенное свойство размера, возвращающее количество пар ключ-значение. Объект не имеет этой функции.
Карта повторяемая. Он позволяет перебирать все пары ключ-значение, используя некоторые встроенные методы, такие как forEach(), keys(), values() и entry(). Объект не является итерируемым. Необходимо использовать циклы for-in или метод Object.entries() для перебора пар ключ-значение.
Карта заказана. Объект неупорядочен.

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

Когда карта предпочтительнее объектов в JavaScript?

Когда вам нужно хранить пары ключ-значение в упорядоченной форме или значением в качестве ключа может быть любой тип данных, например числа, объекты или символы, используйте « карта ' структура данных. Объекты будут использоваться, когда вам нужно использовать строки в качестве ключей и когда вам не нужны какие-либо функции Карт. Разница в производительности между Картами и объектами незначительна при работе с небольшими наборами данных, но при работе с большими наборами данных Карты могут быть быстрее, поскольку они оптимизированы для производительности.

Заключение

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