Mapa vs objeto en JavaScript

Mapa vs objeto en JavaScript
"Mapa" y "Objeto"Son dos estructuras de datos comunes en JavaScript utilizadas para almacenar pares de valores clave. Se utiliza un mapa cuando necesita una estructura de datos que pueda almacenar cualquier tipo de datos como clave o valor y necesite una recopilación ordenada de pares de valor clave. Mientras que el objeto se usa cuando solo necesita almacenar teclas de cadena.

Esta publicación explicará la diferencia entre mapa y objeto en JavaScript.

Cómo definir un objeto en JavaScript?

En JavaScript, un objeto es una colección de propiedades, cada una con un par de valores clave. El "llave" es el "nombre", Y un"valor"Es el" valor "contra la clave. Los objetos pueden representar objetos del mundo real, como un automóvil, una persona o una cuenta bancaria. También pueden representar objetos más abstractos, como un punto matemático en el espacio, un color o una fecha.

Sintaxis

Se puede crear un objeto utilizando la notación de objeto literal entre paréntesis o el constructor de objeto. Usando la notación literal o los soportes, use la sintaxis a continuación:

Const Object =
valor clave,
valor clave

Creación de un objeto usando el constructor de objeto o el "nuevoPalabra clave, use la siguiente sintaxis:

const objeto = nuevo objeto ();
objeto.clave = valor;

Nota: Tenga en cuenta que las teclas o los nombres de las propiedades del objeto deben ser una cadena.

Ejemplo 1: Crear un objeto usando notación literal en JavaScript

En el siguiente ejemplo, crearemos un objeto llamado "stdobject"Usando notación literal o soportes:

var stDobject =
Nombre: 'John',
Edad: 18,
Rollno: 25,
Estándar: 9

Imprima el objeto en la consola:

consola.log (stDobject);

Producción

Ejemplo 2: cree un objeto usando el constructor de objeto en JavaScript

Aquí, crearemos un objeto usando el constructor de objeto utilizando el "nuevoPalabra clave:

const stDoBject = new Object ();

Ahora, agregue las propiedades (valor clave) de objetos usando el punto (.) notación:

stdobject.nombre = 'Jodan';
stdobject.edad = 19;
stdobject.rollno = 15;
stdobject.estándar = 10;

Por último, muestre el objeto en la consola utilizando el "consola.registro()" método:

consola.log (stDobject);

Producción

Cómo definir el mapa en JavaScript?

En JavaScript, un "Mapa"Es una estructura de datos que contiene pares de valor clave similares a un objeto. Le permite asociar datos con claves y recuperar los datos más tarde utilizando las claves. Los mapas se pueden utilizar para implementar diccionarios, tablas hash y otras estructuras de datos que mapean las claves a los valores.

Sintaxis

Para inicializar un mapa, use la siguiente sintaxis:

const mapa = nuevo mapa ([[
['valor clave'],
['valor clave']
]);

También puede crear un mapa utilizando el constructor de mapa o utilizando el nuevo operador, y establecer valores utilizando el "colocar()" método:

const map = nuevo map ();
mapa.set ('Key', 'Value');

Ejemplo: crear un mapa en JavaScript

En el ejemplo dado, crearemos un mapa usando ambas sintaxis.

Crear un mapa utilizando el método de inicialización. Aquí, configuraremos las teclas como una cadena mientras puede configurar las teclas en un mapa en cualquier tipo:

const mapstd = newmap ([[
['Nombre', 'John'],
['edad', 18],
['Rollno', 25],
['Estándar', 9],
]);

O crear un mapa llamando al constructor de mapa o al nuevo operador clave:

const mapstd = new Map ();

Establecer valores en MAP en un par de valor clave utilizando el "colocar()" método:

mapstd.set ('nombre', 'John');
mapstd.set ('edad', 18);
mapstd.set ('Rollno', 25);
mapstd.set ('estándar', 9);

Para imprimir el mapa en la consola, use el "entradas ()"Método con el"para" bucle:

para (const [clave, valor] de mapstd.entradas ())
consola.log ('$ key: $ value');

O para acceder al valor de cualquier clave/propiedad específica, use el "conseguir()" método:

consola.log ("The Rollno of" + Mapstd.Get ('Name') + "Is" + Mapstd.Get ('Rollno'));

La salida indica todas las propiedades del mapa y el valor de la propiedad específica:

Mapa vs objeto en JavaScript

La principal diferencia entre el mapa y el objeto es la siguiente:

Mapa Objeto
Fue introducido en Ecmascript 6 en 2015. JavaScript introdujo el tipo de datos de objeto en su primera versión (Ecmascript 1) lanzada en 1997.
El mapa permite claves de cualquier tipo de datos (e.gramo., objetos, funciones, números, etc.). Las teclas de objeto deben ser cadenas.
Se puede acceder a las propiedades de un mapa utilizando el método get (). Se pueden acceder a las propiedades del objeto utilizando notación de puntos o notación de soporte cuadrado.
El mapa tiene una propiedad de tamaño incorporado para devolver el número de pares de valor clave El objeto no tiene esta característica.
El mapa es iterable. Permite el bucle a través de todos los pares de valor clave utilizando algunos métodos incorporados como foreach (), teclas (), valores () y entradas (). El objeto no es itreable. Existe la necesidad de usar bucles u objeto "For-In".Entradas () Método para iterar pares de valores clave.
Se ordena el mapa. El objeto está desordenado.

Cuando se trabaja con pequeños conjuntos de datos, la diferencia de rendimiento entre mapas y objetos es insignificante, pero cuando se trabaja con conjuntos de datos más grandes, los mapas pueden ser más rápidos ya que están optimizados para el rendimiento.

¿Cuándo prefiere el mapa sobre los objetos en JavaScript??

Cuando necesite almacenar pares de valor clave en una forma ordenada o el valor como clave sea cualquier tipo de datos, como números, objetos o símbolos, use el "Mapa" estructura de datos. Los objetos se utilizarán cuando necesite usar cadenas como claves y cuando no necesite ninguna de las características de los mapas. La diferencia de rendimiento entre mapas y objetos es insignificante mientras se trabaja con pequeños conjuntos de datos, pero cuando se trabaja con conjuntos de datos más grandes, los mapas pueden ser más rápidos, ya que están optimizados para el rendimiento.

Conclusión

El mapa y el objeto se utilizan para almacenar datos como pares de valor clave en JavaScript, pero tienen algunas diferencias. El mapa es una estructura de datos más potente y flexible que el objeto, y es la opción preferida cuando necesita almacenar pares de valores clave que necesitan ser ordenados, tienen claves de diferentes tipos de datos o tienen una propiedad de tamaño. Esta publicación explicó la diferencia entre mapa y objeto en JavaScript.