Heim >Web-Frontend >js-Tutorial >Wie kann ich eine Kartenfunktion für Objekte in JavaScript erstellen?
Erstellen einer Kartenfunktion für Objekte in JavaScript (Alternative zu Array.map)
In JavaScript ist die Array.prototype.map() Die Methode wird häufig zum Durchlaufen von Arrays und zum Anwenden einer bestimmten Funktion auf jedes Element verwendet. Für Objekte gibt es jedoch keine vergleichbare native Methode. In diesem Artikel wird eine Lösung für diese Einschränkung untersucht, indem eine benutzerdefinierte Kartenfunktion für Objekte eingeführt wird.
Das Problem:
Betrachten Sie ein Objekt mit Schlüssel-Wert-Paaren:
myObject = { 'a': 1, 'b': 2, 'c': 3 };
Das Ziel besteht darin, ein neues Objekt zu erstellen, bei dem jeder Wert durch eine bestimmte Funktion transformiert wird. Verdoppeln wir zum Beispiel die Werte:
newObject = myObject.map(function(value, label) { return value * 2; }); // newObject should now be { 'a': 2, 'b': 4, 'c': 6 }
Die Lösung:
Obwohl JavaScript keine native Kartenfunktion für Objekte hat, gibt es eine elegante Lösung mithilfe des Objekts. Methoden „keys()“ und „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 }
Hier Code:
Dieser Ansatz ändert das ursprüngliche Objekt an Ort und Stelle, was in bestimmten Szenarien möglicherweise nicht wünschenswert ist. Um ein neues Objekt mit den transformierten Werten zu erstellen, klonen Sie einfach das Originalobjekt, bevor Sie die Transformation anwenden.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Kartenfunktion für Objekte in JavaScript erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!