ExpertiDict

TypeScript · Intermediário · Inglês · Técnico

non-null assertion

/nɑn nʌl əˈsɝʃən/substantivo

Operador ! pós-fixado que informa ao compilador que um valor não é null nem undefined. Remove esses casos do tipo sem nenhuma checagem em runtime.

Onde usar

Surge em buscas como map.get(k)! ou em referências a elementos. Em PR costuma ser questionado, pois vira TypeError se a suposição falhar; um if ou um erro explícito é mais seguro.

Em código

const m = new Map<string, number>();
m.set('a', 1);
const v = m.get('a')!; // number
const t = m.get('b');
if (t === undefined) throw Error('falta b');

Exemplos

Remove that non-null assertion and handle the missing key.

Remova esse non-null assertion e trate a chave ausente.

The non-null assertion on the map lookup will blow up if the key is missing.

O non-null assertion na busca do mapa vai estourar se a chave não existir.

Cuidado

Não confunda com o ! de negação lógica (!x) nem com o !: de atribuição definitiva em propriedades de classe.

Sinônimos

operador !

Antônimos

optional chaining

Veja também

Todos os termos de TypeScript