TypeScript · Middle · Pytanie 74 z 75
Czy zawężanie działa, gdy unia dyskryminowana jest najpierw zdestrukturyzowana?
const { kind, radius } = shape;
if (kind === 'circle') radius.toFixed();- ✓Poprawna odpowiedź: Od TS 4.6 zdestrukturyzowane dyskryminanty zawężają też powiązane zdestrukturyzowane właściwości (przy destrukturyzacji przez
const) - 2Nigdy nie zawęża; trzeba używać
shape.kind - 3Zawęża tylko w instrukcjach
switch
Wyjaśnienie
Zdestrukturyzowane zmienne muszą być const (lub niezmienianymi parametrami), by analiza przepływu sterowania je powiązała.