Überspringen von übereinstimmenden Objekt-Schlüsseln

JavaScriptJavaScriptBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

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.

  • omitBy erstellt ein Objekt, das aus den Eigenschaften besteht, für die die gegebene Funktion falsy zurückgibt.
  • Object.keys() und Array.prototype.filter() werden verwendet, um die Schlüssel zu entfernen, für die fn einen truthy-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: value und key.
  • Im folgenden Beispiel wird gezeigt, wie omitBy verwendet 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.