[Dúvida] Undefined no TypeScript

Galera, vou trazer uma discursão aqui sobre uma coisa no tipo undefined do TS que não tá entrando na minha cabeça…

Acontece que o undefined sempre foi usado no JavaScript para variáveis que já foram declaradas, mas ainda não lhe foi atribuído um valor, certo?

Quando declaramos uma variável no TS (let name: string;), nesse caso a variável não foi inicializada, pq ela não tem nenhuma valor atribuído, mas sabemos que ela é do tipo string.
Já quando fazemos o mesmo, mas sem declarar o tipo (let name;), o próprio TS já atribui a ela o tipo any.

A pergunta é: Então quando é que a variável no TypeScript vai ser undefined? Só quando já criamos ela com a tipagem undefined? Tipo let name: undefined.


Obs. espero que não tenha ficado confuso… rs

2 Likes

Boa tarde @Filiperv7, isso mesmo, variáveis podem ser undefined quando não inicializamos elas ou quando definimos elas como undefined, mas raramente o tipo undefined vem sozinho, geralmente quando não se sabe se uma variável vai ser settada ou não usa-se o operador de combinação de tipos; por exemplo, se em algum objeto, algum item pode não ser settado, podemos usar:

interface Cidade {
  possuiMcDonalds: boolean | undefined;
}

Nesse caso undefined poderia significar que não possui informação sobre o assunto, true significa que possui méqui e false significa que não da pra comer um mcchicken naquela cidade.

4 Likes

Top, mano! Muito obrigado

Pelo visto JS vai ser a melhor linguagem para programar computadores quanticos hahaha :joy:

1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.