TypeScript · Senior · Pytanie 37 z 75
Co zmienia flaga exactOptionalPropertyTypes?
- ✓Poprawna odpowiedź:
{ a?: string }nie przyjmuje już jawnegoa: undefined - 2Czyni wszystkie opcjonalne właściwości wymaganymi
- 3Zabrania opcjonalnych właściwości w interfejsach
Wyjaśnienie
Bez flagi a?: string jest równoważne a?: string | undefined. Z nią rozróżniane jest „brak klucza” i „klucz z wartością undefined”, co ma znaczenie dla Object.keys, in i spreadu. Jeśli undefined jest jawnie potrzebne, napisz a?: string | undefined.