Menu
Coddy logo textTech

Validierung der Buchautoren

Teil des Abschnitts Objektorientierte Programmierung der JavaScript-Journey von Coddy — Lektion 52 von 56.

challenge icon

Aufgabe

Verbessern Sie den Konstruktor der Book-Klasse durch Hinzufügen einer Validierung. Derzeit akzeptiert Book jeden Wert für den Parameter author, aber er sollte nur eine Author-Instanz akzeptieren.

Ihre Aufgabe:

  1. Fügen Sie im Book-Konstruktor eine if-else-Prüfung hinzu
  2. Wenn der Autor gültig ist (eine Instanz der Author-Klasse), indem Sie author instanceof Author verwenden, setzen Sie this.#author = author
  3. Andernfalls (Autor ist ungültig): Protokollieren Sie exakt “Invalid author: must be Author instance”. Setzen Sie this.#author = null

Auf diese Weise sollte das Buch auch mit einem ungültigen Autor weiterhin erstellt werden.

Probier es selbst

import { Author } from './Author.js';
import { Book } from './Book.js';

// Tests
const rowling = new Author('J.K. Rowling');

// Gültiger Fall (sollte geräuschlos funktionieren)
const validBook = new Book('Harry Potter', rowling);
console.log('Author:', validBook.authorInfo); // Sollte ausgeben: "Author: J.K. Rowling"

// Ungültige Fälle (sollte Nachricht protokollieren, aber das Buch trotzdem erstellen)
const invalid1 = new Book('Fake Book', 'String Author');

Alle Lektionen in Objektorientierte Programmierung