Cet article expliquera la différence entre Map et Object en JavaScript.
Comment définir un objet en JavaScript ?
En JavaScript, un objet est une collection de propriétés, chacune avec une paire clé-valeur. Le ' clé ' est le ' nom », et un « valeur ” est la “valeur” contre la clé. Les objets peuvent représenter des objets du monde réel, comme une voiture, une personne ou un compte bancaire. Ils peuvent également représenter des objets plus abstraits, comme un point mathématique dans l'espace, une couleur ou une date.
Syntaxe
Un objet peut être créé à l'aide de crochets de notation d'objet littéral {} ou du constructeur d'objet. En utilisant la notation littérale ou les crochets, utilisez la syntaxe ci-dessous :
constante objet = {
clé : valeur,
clé : valeur
}
Création d'un objet à l'aide du constructeur d'objet ou du ' nouveau ” mot-clé, utilisez la syntaxe suivante :
constante objet = nouveau Objet ( ) ;
objet. clé = valeur ;
Note: N'oubliez pas que les clés ou les noms des propriétés d'objet doivent être une chaîne.
Exemple 1 : créer un objet à l'aide de la notation littérale en JavaScript
Dans l'exemple suivant, nous allons créer un objet appelé ' stdObject ” en utilisant une notation littérale ou des crochets :
var stdObject = {
nom : 'John' ,
âge : 18 ,
rollno : 25 ,
standard : 9
}
Imprimez l'objet sur la console :
console. enregistrer ( stdObject ) ;Sortir
Exemple 2 : créer un objet à l'aide du constructeur d'objets en JavaScript
Ici, nous allons créer un objet en utilisant le constructeur d'objet en utilisant le ' nouveau ' mot-clé:
constante stdObject = nouveau Objet ( ) ;Maintenant, ajoutez les propriétés (clé-valeur) des objets en utilisant la notation point(.) :
stdObject. nom = 'Merde' ;stdObject. âge = 19 ;
stdObject. rollno = quinze ;
stdObject. standard = dix ;
Enfin, affichez l'objet sur la console à l'aide de la touche ' console.log() ' méthode:
console. enregistrer ( stdObject ) ;Sortir
Comment définir une carte en JavaScript ?
En JavaScript, un ' Carte ” est une structure de données qui contient des paires clé-valeur similaires à un objet. Il vous permet d'associer des données à des clés et de récupérer les données ultérieurement à l'aide des clés. Les cartes peuvent être utilisées pour implémenter des dictionnaires, des tables de hachage et d'autres structures de données qui mappent des clés à des valeurs.
Syntaxe
Pour initialiser une Map, utilisez la syntaxe suivante :
constante carte = nouveau Carte ( [[ 'clé' , 'valeur' ] ,
[ 'clé' , 'valeur' ]
] ) ;
Vous pouvez également créer une carte à l'aide du constructeur Map ou en utilisant le nouvel opérateur, et définir des valeurs en utilisant le ' ensemble() ' méthode:
constante carte = nouveau Carte ( ) ;carte. ensemble ( 'clé' , 'valeur' ) ;
Exemple : Créer une carte en JavaScript
Dans l'exemple donné, nous allons créer une Map en utilisant les deux syntaxes.
Créez une carte à l'aide de la méthode d'initialisation. Ici, nous allons définir des clés sous forme de chaîne alors que vous pouvez définir des clés dans une carte de n'importe quel type :
constante mapStd = nouveauCarte ( [[ 'nom' , 'John' ] ,
[ 'âge' , 18 ] ,
[ 'rollno' , 25 ] ,
[ 'standard' , 9 ] ,
] ) ;
Ou créez une Map en appelant le constructeur Map ou le nouveau mot-clé/opérateur :
constante mapStd = nouveau Carte ( ) ;Définissez les valeurs dans Map dans une paire clé-valeur à l'aide de ' ensemble() ' méthode:
mapStd. ensemble ( 'nom' , 'John' ) ;mapStd. ensemble ( 'âge' , 18 ) ;
mapStd. ensemble ( 'rollno' , 25 ) ;
mapStd. ensemble ( 'standard' , 9 ) ;
Pour imprimer la carte sur la console, utilisez le ' entrées() ' méthode avec le ' pour-de ' boucle:
pour ( constante [ valeur clé ] de mapStd. entrées ( ) ) {console. enregistrer ( `$ { clé } : $ { valeur } ` ) ;
}
Ou pour accéder à la valeur d'une clé/propriété spécifique, utilisez le ' obtenir() ' méthode:
console. enregistrer ( 'Le nom de ' + mapStd. obtenir ( 'nom' ) + ' est ' + mapStd. obtenir ( 'rollno' ) ) ;La sortie indique toutes les propriétés de la carte et la valeur de la propriété spécifique :
Carte vs objet en JavaScript
La principale différence entre la carte et l'objet est la suivante :
Carte | Objet |
Il a été introduit dans ECMAScript 6 en 2015. | JavaScript a introduit le type de données Object dans sa première version (ECMAScript 1) sortie en 1997. |
La carte autorise les clés de tout type de données (par exemple, objets, fonctions, nombres, etc.). | Les clés d'objet doivent être des chaînes. |
Les propriétés d'une Map sont accessibles à l'aide de la méthode get(). | Les propriétés de l'objet sont accessibles à l'aide de la notation par points ou par crochets. |
Map a une propriété de taille intégrée pour renvoyer le nombre de paires clé-valeur | L'objet n'a pas cette fonctionnalité. |
La carte est itérable. Il permet de parcourir toutes les paires clé-valeur à l'aide de certaines méthodes intégrées telles que forEach(), keys(), values() et entry(). | L'objet n'est pas itérable. Il est nécessaire d'utiliser des boucles 'for-in' ou la méthode Object.entries() pour itérer les paires clé-valeur. |
La carte est commandée. | L'objet n'est pas ordonné. |
Lorsque vous travaillez avec de petits ensembles de données, la différence de performances entre les cartes et les objets est négligeable, mais lorsque vous travaillez avec des ensembles de données plus volumineux, les cartes peuvent être plus rapides car elles sont optimisées pour les performances.
Quand la carte préfère-t-elle les objets en JavaScript ?
Lorsque vous avez besoin de stocker des paires clé-valeur sous une forme ordonnée ou que la valeur en tant que clé soit n'importe quel type de données, tel que des nombres, des objets ou des symboles, utilisez le ' Carte ' Structure de données. Les objets seront utilisés lorsque vous devez utiliser des chaînes comme clés et lorsque vous n'avez besoin d'aucune des fonctionnalités de Maps. La différence de performances entre les cartes et les objets est négligeable lorsque vous travaillez avec de petits ensembles de données, mais lorsque vous travaillez avec des ensembles de données plus volumineux, les cartes peuvent être plus rapides car elles sont optimisées pour les performances.
Conclusion
Map et Object sont tous deux utilisés pour stocker des données sous forme de paires clé-valeur en JavaScript, mais ils présentent quelques différences. Map est une structure de données plus puissante et flexible que Object, et est le choix préféré lorsque vous devez stocker des paires clé-valeur qui doivent être triées, avoir des clés de différents types de données ou avoir une propriété de taille. Cet article explique la différence entre Map et Object en JavaScript.