Einführung
In diesem Lab werden wir eine JavaScript-Funktion namens findLastKey() untersuchen, die uns hilft, den letzten Schlüssel in einem Objekt zu finden, der einer bestimmten Bedingung entspricht. Wir werden lernen, wie man Object.keys(), Array.prototype.reverse() und Array.prototype.find() verwendet, um diese Funktion zu implementieren, und wie man sie verwenden kann, um unseren Code zu vereinfachen, wenn man mit Objekten arbeitet. Am Ende dieses Labs werdet ihr ein besseres Verständnis dafür haben, wie man mit JavaScript-Objekten umgeht und wie man die findLastKey()-Funktion verwendet, um euren Code präziser und effizienter zu gestalten.
Funktion, um den letzten Schlüssel zu finden, der einer Bedingung entspricht
Um den letzten Schlüssel in einem Objekt zu finden, der einer bestimmten Bedingung entspricht, verwenden Sie die findLastKey-Funktion. Diese Funktion nimmt ein Objekt und eine Prüfungsfunktion als Argumente entgegen. Wenn ein passender Schlüssel gefunden wird, gibt die Funktion ihn zurück. Andernfalls gibt sie undefined zurück. Hier sind die Schritte, die die Funktion zur Suche nach dem letzten Schlüssel ausführt:
- Verwenden Sie
Object.keys(), um alle Eigenschaften des Objekts zu erhalten. - Verwenden Sie
Array.prototype.reverse(), um die Reihenfolge der Schlüssel umzukehren. - Verwenden Sie
Array.prototype.find(), um die bereitgestellte Funktion für jedes Schlüssel-Wert-Paar zu testen. Die Callback-Funktion erhält drei Argumente - den Wert, den Schlüssel und das Objekt. - Wenn ein passender Schlüssel gefunden wird, geben Sie ihn zurück.
const findLastKey = (obj, fn) =>
Object.keys(obj)
.reverse()
.find((key) => fn(obj[key], key, obj));
Hier ist ein Beispiel für die Verwendung von findLastKey:
findLastKey(
{
barney: { age: 36, active: true },
fred: { age: 40, active: false },
pebbles: { age: 1, active: true }
},
(x) => x["active"]
); // 'pebbles'
Um diese Funktion zu verwenden, öffnen Sie das Terminal/SSH und geben Sie node ein, um zu beginnen, zu programmieren.
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab "Find Last Matching Key" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.