Maison >interface Web >js tutoriel >Comment puis-je mapper des objets JavaScript sans fonction native `map()` ?

Comment puis-je mapper des objets JavaScript sans fonction native `map()` ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-12 22:57:18627parcourir

How Can I Map JavaScript Objects Without a Native `map()` Function?

Mappage d'objets avec une fonctionnalité native

JavaScript ne dispose pas nativement d'une fonction de mappage spécifiquement conçue pour les objets comme celle disponible pour les tableaux avec Array.prototype .carte. Cependant, explorons une approche pour obtenir une fonctionnalité similaire.

Émulation d'une carte d'objets native

Bien que JavaScript ne fournisse pas de Object.prototype.map intégré , nous pouvons obtenir un comportement similaire en utilisant une combinaison de la fonction Object.keys() et de la méthode forEach() :

var myObject = { 'a': 1, 'b': 2, 'c': 3 };

Object.keys(myObject).forEach(function(key, index) {
  myObject[key] *= 2;
});

console.log(myObject);
// => { 'a': 2, 'b': 4, 'c': 6 }

Dans ce code, nous obtenons d'abord les clés de l'objet en utilisant Object.keys(), qui renvoie un tableau contenant les noms de propriétés de l'objet. Nous parcourons ensuite ce tableau à l'aide de la méthode forEach(), où nous pouvons accéder à la valeur de la propriété à l'aide de myObject[key]. Enfin, nous modifions la valeur de la propriété en place en la multipliant par deux.

La sortie du code ci-dessus démontre que toutes les propriétés de l'objet sont mappées et les valeurs sont multipliées par deux, produisant un objet mis à jour comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn