Übung 27: Kombiniere Optional, Readonly und Required Properties in einem Interface

In dieser Übung erstellst du ein Car Interface mit required, optional und readonly Eigenschaften. Anschließend schreibst du eine Funktion, um ein neues Car Objekt zu erstellen und Änderungen an veränderbaren Eigenschaften zu verarbeiten.

Anweisungen:

  1. Definiere ein Car Interface, die Folgendes beinhaltet:
    • Erforderliche Eigenschaften make (string) und model (string).
    • Optionale Eigenschaften year (Number) und color (String).
    • Eine readonly vin (string) Eigenschaft (Fahrzeugidentifikationsnummer).
  2. Schreibe eine Funktion createCar die:
    • Nimmt make, model und vin auf und gibt ein Car Objekt zurück.
    • Optional können year und color akzeptiert werden.
  3. Schreibe eine weitere Funktion paintCar die:
    • Akzeptiert ein Car Objekt und einen neuen color String.
    • Aktualisiert die color des Fahrzeugs (falls vorhanden), verhindert aber jede Änderung an der vin.