Maison >interface Web >js tutoriel >Comment puis-je créer une fonction de carte pour des objets en JavaScript ?
Création d'une fonction de carte pour les objets en JavaScript (alternative à Array.map)
En JavaScript, Array.prototype.map() La méthode est largement utilisée pour parcourir des tableaux et appliquer une fonction spécifiée à chaque élément. Cependant, aucune méthode native similaire n’existe pour les objets. Cet article explore une solution à cette limitation en introduisant une fonction de cartographie personnalisée pour les objets.
Le problème :
Considérez un objet avec des paires clé-valeur :
myObject = { 'a': 1, 'b': 2, 'c': 3 };
Le but est de créer un nouvel objet où chaque valeur est transformée par une fonction spécifiée. Par exemple, doublons les valeurs :
newObject = myObject.map(function(value, label) { return value * 2; }); // newObject should now be { 'a': 2, 'b': 4, 'c': 6 }
La solution :
Bien que JavaScript ne dispose pas d'une fonction de cartographie native pour les objets, il existe une solution élégante utilisant l'objet. Méthodes key() et forEach() :
var myObject = { 'a': 1, 'b': 2, 'c': 3 }; Object.keys(myObject).forEach(function(key, index) { myObject[key] *= 2; }); console.log(myObject); // Output: { 'a': 2, 'b': 4, 'c': 6 }
Dans ce code :
Cette approche modifie l'objet d'origine en place, ce qui peut ne pas être souhaitable dans certains scénarios. Pour créer un nouvel objet avec les valeurs transformées, clonez simplement l'objet d'origine avant d'appliquer la transformation.
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!