TypeScript · Junior · Frage 46 von 75
Was passiert, wenn man ein Objektliteral mit einer zusätzlichen Eigenschaft übergibt?
type User = { name: string };
const u: User = { name: 'Ann', age: 30 };- 1Ein Fehler: Literale unterliegen der Prüfung auf überzählige Eigenschaften
- 2Kein Problem: zusätzliche Eigenschaften sind immer erlaubt
- 3Die Eigenschaft
agewird beim Kompilieren still entfernt
Antwort zeigen
Richtige Antwort: Ein Fehler: Literale unterliegen der Prüfung auf überzählige Eigenschaften
Erklärung
Die Prüfung auf überzählige Eigenschaften gilt nur für frische Objektliterale - ein Schutz vor Tippfehlern. Legt man das Objekt erst in eine Variable und weist es dann zu, gibt es keinen Fehler (strukturelle Kompatibilität). Der Compiler entfernt nichts.