Einführung
In diesem Lab werden wir das Konzept des Auslassens von Objekt-Schlüsseln basierend auf einer gegebenen Bedingung mit JavaScript erkunden. Wir werden lernen, wie die omitBy()-Funktion verwendet werden kann, um Schlüssel aus einem Objekt basierend auf einer bereitgestellten Funktion zu filtern. Anhand von praktischen Beispielen werden wir verstehen, wie diese Funktion hilfreich sein kann, um unseren Code zu vereinfachen und effizienter zu gestalten.
Entfernen von Objekt-Schlüsseln basierend auf einer Callback-Funktion
Um Objekt-Schlüssel basierend auf einer Callback-Funktion zu entfernen, verwenden Sie die omitBy-Funktion.
omitByerstellt ein Objekt, das aus den Eigenschaften besteht, für die die gegebene Funktionfalsyzurückgibt.Object.keys()undArray.prototype.filter()werden verwendet, um die Schlüssel zu entfernen, für diefneinentruthy-Wert zurückgibt.Array.prototype.reduce()wandelt die gefilterten Schlüssel wieder in ein Objekt mit den entsprechenden Schlüssel-Wert-Paaren um.- Die Callback-Funktion nimmt zwei Argumente entgegen:
valueundkey. - Im folgenden Beispiel wird gezeigt, wie
omitByverwendet wird, um numerische Schlüssel aus einem Objekt zu entfernen.
const omitBy = (obj, fn) =>
Object.keys(obj)
.filter((k) => !fn(obj[k], k))
.reduce((acc, key) => ((acc[key] = obj[key]), acc), {});
omitBy({ a: 1, b: "2", c: 3 }, (x) => typeof x === "number"); // { b: '2' }
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab "Omit Matching Object Keys" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.