Menu
Coddy logo textTech

Validazione dell'autore del libro

Fa parte della sezione Programmazione orientata agli oggetti del percorso JavaScript di Coddy. Lezione 52 di 56.

challenge icon

Sfida

Migliora il costruttore della classe Book aggiungendo la convalida. Attualmente, Book accetta qualsiasi valore per il parametro author, ma dovrebbe accettare solo un'istanza di Author.

Il tuo compito:

  1. Nel costruttore di Book, aggiungi un controllo if-else
  2. Se l'autore è valido (un'istanza della classe Author) usando author instanceof Author, imposta this.#author = author
  3. Altrimenti (l'autore non è valido): registra esattamente “Invalid author: must be Author instance”. Imposta this.#author = null

In questo modo, il libro dovrebbe essere creato comunque anche se l'autore non è valido.

Provalo tu

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

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

// Caso valido (dovrebbe funzionare senza mostrare messaggi)
const validBook = new Book('Harry Potter', rowling);
console.log('Author:', validBook.authorInfo); // Dovrebbe mostrare: "Author: J.K. Rowling"

// Casi non validi (dovrebbero mostrare un messaggio ma creare comunque il libro)
const invalid1 = new Book('Fake Book', 'String Author');

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore JavaScript online