Menu
Coddy logo textTech

Validation de l'auteur du livre

Fait partie de la section Programmation Orientée Objet du Journey JavaScript de Coddy. Leçon 52 sur 56.

challenge icon

Défi

Améliore le constructeur de la classe Book en ajoutant une validation. Actuellement, Book accepte n’importe quelle valeur pour le paramètre author, mais il ne devrait accepter qu’une instance de Author.

Ta tâche :

  1. Dans le constructeur de Book, ajoute une vérification if-else
  2. Si l’auteur est valide (une instance de la classe Author) en utilisant author instanceof Author, définis this.#author = author
  3. Sinon (l’auteur est invalide) : journalise exactement “Invalid author: must be Author instance”. Définis this.#author = null

Ainsi, le livre devrait tout de même être créé même avec un auteur invalide.

Essayez vous-même

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

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

// Cas valide (devrait fonctionner silencieusement)
const validBook = new Book('Harry Potter', rowling);
console.log('Author:', validBook.authorInfo); // Should output: "Author: J.K. Rowling"

// Cas invalides (devrait logger un message mais créer quand même le livre)
const invalid1 = new Book('Fake Book', 'String Author');

Toutes les leçons de Programmation Orientée Objet

Entraînez-vous par vous-même : Compilateur JavaScript en ligne