Menu
Coddy logo textTech

Prüfen, ob Key existiert

Teil des Abschnitts Logik & Ablauf der JavaScript-Journey von Coddy — Lektion 16 von 65.

Um nach einem bestimmten Schlüssel in einem JSON-Objekt zu suchen, verwenden Sie entweder den in-Operator oder hasOwnProperty(). Zum Beispiel:

const product = { "name": "Laptop", "price": 900 };
if ("price" in product) {
  console.log("Key exists!");
}

if (product.hasOwnProperty("price")) {
  console.log("Key exists!");
}

Dies ist praktisch, um zu prüfen, ob bestimmte Daten vor der Verarbeitung vorhanden sind.

obj.hasOwnProperty("key") gibt false zurück, wenn obj key nicht als eigene Eigenschaft besitzt. Jedoch bedeutet obj.key === undefined nicht zwangsläufig, dass hasOwnProperty("key") false zurückgibt. Es gibt zwei Fälle, in denen obj.key undefined ist:

  • Die Eigenschaft existiert überhaupt nicht → hasOwnProperty("key") gibt false zurück.
  • Die Eigenschaft existiert, hat aber den Wert undefinedhasOwnProperty("key") gibt true zurück.

Zum Beispiel:

const obj1 = {};  
console.log(obj1.key); // undefined
console.log(obj1.hasOwnProperty("key"));
// false

const obj2 = { key: undefined };
console.log(obj2.key); // undefined
console.log(obj2.hasOwnProperty("key"));
// true
challenge icon

Aufgabe

Einfach

Erstelle eine Funktion namens toggleBookStatus, die ein Buch-Objekt als Parameter entgegennimmt. Die Funktion sollte:

  1. Wenn das Buch eine Eigenschaft isRead hat, die true ist, ändere sie auf false
  2. Wenn das Buch eine Eigenschaft isRead hat, die false ist, ändere sie auf true
  3. Wenn das Buch keine Eigenschaft isRead hat, füge sie hinzu und setze sie auf true
  4. Gib das modifizierte Buch-Objekt zurück

Probier es selbst

function toggleBookStatus(book) {
    // Schreibe deinen Code hier
}
// Schreibe nichts außerhalb der Funktion
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf