TypeScript · Junior · Pytanie 46 z 75
Co się stanie przy przekazaniu literału obiektu z dodatkową właściwością?
type User = { name: string };
const u: User = { name: 'Ann', age: 30 };- ✓Poprawna odpowiedź: Błąd: literały podlegają sprawdzaniu nadmiarowych właściwości
- 2Wszystko w porządku: dodatkowe właściwości są zawsze dozwolone
- 3Właściwość
agejest po cichu usuwana podczas kompilacji
Wyjaśnienie
Sprawdzanie nadmiarowych właściwości dotyczy tylko „świeżych” literałów obiektów - to ochrona przed literówkami. Jeśli najpierw umieścisz obiekt w zmiennej, a potem go przypiszesz, błędu nie będzie (zgodność strukturalna). Kompilator niczego nie usuwa.