Mapa vs Objeto en JavaScript

Mapa Vs Objeto En Javascript



Mapa ' y ' Objeto ” son dos estructuras de datos comunes en JavaScript que se utilizan para almacenar pares clave-valor. Un mapa se utiliza cuando necesita una estructura de datos que pueda almacenar cualquier tipo de datos como clave o valor y necesita una colección ordenada de pares clave-valor. Mientras que Object se usa cuando solo necesita almacenar claves 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 clave-valor. 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



Un objeto se puede crear utilizando la notación de objeto literal {} corchetes o el constructor de objetos. Usando la notación literal o corchetes, use la siguiente sintaxis:



constante objeto = {
llave : valor,
llave : valor
}

Crear un objeto utilizando el constructor de objetos o el ' nuevo ” palabra clave, use la siguiente sintaxis:





constante objeto = nuevo Objeto ( ) ;

objeto. llave = valor ;

Nota: Tenga en cuenta que las claves 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 “ objeto estándar ” usando notación literal o corchetes:



var objeto estándar = {
nombre : 'John' ,
edad : 18 ,
rollo no : 25 ,
estándar : 9
}

Imprime el objeto en la consola:

consola. registro ( objeto estándar ) ;

Producción

Ejemplo 2: crear un objeto utilizando el constructor de objetos en JavaScript

Aquí, crearemos un objeto utilizando el constructor de objetos utilizando el ' nuevo palabra clave:

constante objeto estándar = nuevo Objeto ( ) ;

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

objeto estándar. nombre = 'Jodan' ;

objeto estándar. edad = 19 ;

objeto estándar. rollo no = 15 ;

objeto estándar. estándar = 10 ;

Por último, muestre el objeto en la consola usando el ' consola.log() ' método:

consola. registro ( objeto estándar ) ;

Producción

¿Cómo definir el mapa en JavaScript?

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

Sintaxis

Para inicializar un Mapa use la siguiente sintaxis:

constante mapa = nuevo Mapa ( [

[ 'llave' , 'valor' ] ,

[ 'llave' , 'valor' ]

] ) ;

También puede crear un mapa usando el constructor de mapas o usando el operador new, y establecer valores usando el ' colocar() ' método:

constante mapa = nuevo Mapa ( ) ;

mapa. colocar ( 'llave' , 'valor' ) ;

Ejemplo: crear un mapa en JavaScript

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

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

constante mapStd = nuevoMapa ( [
  [ 'nombre' , 'John' ] ,
  [ 'edad' , 18 ] ,
  [ 'rollno' , 25 ] ,
  [ 'estándar' , 9 ] ,
] ) ;

O cree un mapa llamando al constructor del mapa o la nueva palabra clave/operador:

constante mapStd = nuevo Mapa ( ) ;

Establezca valores en Map en un par clave-valor usando el ' colocar() ' método:

mapaStd. colocar ( 'nombre' , 'John' ) ;

mapaStd. colocar ( 'edad' , 18 ) ;

mapaStd. colocar ( 'rollno' , 25 ) ;

mapaStd. colocar ( 'estándar' , 9 ) ;

Para imprimir el mapa en la consola, utilice el botón “ entradas() ” método con el “ para-de ' bucle:

para ( constante [ valor clave ] de mapaStd. entradas ( ) ) {

consola. registro ( `$ { llave } : $ { valor } ` ) ;

}

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

consola. registro ( 'El rollo de' + mapaStd. conseguir ( 'nombre' ) + ' es ' + mapaStd. conseguir ( 'rollno' ) ) ;

El resultado 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
Se introdujo en ECMAScript 6 en 2015. JavaScript introdujo el tipo de datos Object en su primera versión (ECMAScript 1) lanzada en 1997.
El mapa permite claves de cualquier tipo de datos (por ejemplo, objetos, funciones, números, etc.). Las claves de objeto deben ser cadenas.
Se puede acceder a las propiedades de un Mapa utilizando el método get(). Se puede acceder a las propiedades del objeto utilizando la notación de puntos o la notación de corchetes.
El mapa tiene una propiedad de tamaño incorporada para devolver el número de pares clave-valor El objeto no tiene esta característica.
El mapa es iterable. Permite recorrer todos los pares clave-valor utilizando algunos métodos integrados como forEach(), keys(), values() yentries(). El Objeto no es iterable. Es necesario utilizar bucles 'for-in' o el método Object.entries() para iterar pares clave-valor.
El mapa está ordenado. El objeto está desordenado.

Cuando se trabaja con conjuntos de datos pequeños, la diferencia de rendimiento entre Maps y los objetos es insignificante, pero cuando se trabaja con conjuntos de datos más grandes, Maps puede ser más rápido, ya que su rendimiento está optimizado.

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

Cuando necesite almacenar pares clave-valor en 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 utilizar cadenas como claves y cuando no necesite ninguna de las funciones de Maps. La diferencia de rendimiento entre los mapas y los objetos es insignificante cuando se trabaja con conjuntos de datos pequeños, 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

Map y Object se usan para almacenar datos como pares clave-valor en JavaScript, pero tienen algunas diferencias. Map es una estructura de datos más poderosa y flexible que Object, y es la opción preferida cuando necesita almacenar pares clave-valor que deben ordenarse, tener claves de diferentes tipos de datos o tener una propiedad de tamaño. Esta publicación explica la diferencia entre Mapa y Objeto en JavaScript.