Einführung
In diesem Lab werden wir die unwind-Funktion in JavaScript untersuchen. Der Zweck dieser Funktion besteht darin, aus einem Objekt und einer seiner array-wertigen Eigenschaften ein Array von Objekten zu erzeugen. Mit Hilfe von Objekt-Destrukturierung und Array.prototype.map() können wir ein Array von Objekten erstellen, wobei jedes Objekt die Werte des ursprünglichen Objekts enthält, mit Ausnahme der angegebenen Schlüssel, der auf seine einzelnen Werte abgebildet wird. Durch dieses Lab werden wir ein tieferes Verständnis dafür erlangen, wie man in JavaScript Daten aus Objekten manipulieren und extrahieren kann.
Objekt unwind-Funktion
Um ein Objekt anhand seiner array-wertigen Eigenschaft aufzulösen, verwenden Sie die unwind-Funktion.
- Um mit der Programmierung zu beginnen, öffnen Sie das Terminal/SSH und geben Sie
nodeein. - Die Funktion verwendet Objekt-Destrukturierung, um das Schlüssel-Wert-Paar für den angegebenen
Schlüsselaus dem Objekt auszuschließen. - Anschließend verwendet es
Array.prototype.map()für die Werte des angegebenenSchlüssels, um ein Array von Objekten zu erstellen. - Jedes Objekt enthält die Werte des ursprünglichen Objekts, mit Ausnahme von
key, der auf seine einzelnen Werte abgebildet wird.
const unwind = (key, obj) => {
const { [key]: _, ...rest } = obj;
return obj[key].map((val) => ({ ...rest, [key]: val }));
};
Beispielverwendung:
unwind("b", { a: true, b: [1, 2] }); // [{ a: true, b: 1 }, { a: true, b: 2 }]
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Unwind Object-Lab abgeschlossen. Sie können in LabEx weitere Labs ausprobieren, um Ihre Fähigkeiten zu verbessern.