FC ConcursosFC Concursos

Questão FC373462

Considere o fragmento de programa TypeScript abaixo. let dados: (string | number) [] = [300, 100, "Paulo", 200]; let valor = dados [0]; console.log (valor); Sobre à programa, é cor

Desenvolvimento Web

FCC · 2024

Considere o fragmento de programa TypeScript abaixo.

 

let dados: (string | number) [] = [300, 100, "Paulo", 200];

let valor = dados [0];

console.log (valor);

 

Sobre à programa, é correto afirmar que

  1. ocorrerá um erro, pois o tipo do array deve ser ou somente string ou somente number dentro dos parênteses.
  2. utiliza Union Types, permitindo que o array suporte valores dos tipos string ou number.
  3. ocorrerá um erro, pois os valores do array devem ser todos do tipo string ou todos do tipo number.
  4. ocorrerá um erro, pois na segunda linha o índice do array dados deve ser 1,2,3 ou 4.
  5. está correto e utiliza Enumeration para definir o tipo array como dinamicamente tipado.
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

O trecho declara Union Types em TypeScript ao usar a sintaxe (string | number)[], permitindo que o array contenha valores de mais de um tipo simultaneamente.

No exemplo, let dados: (string | number)[] = [300, 100, "Paulo", 200]; o vetor armazena números e strings sem erro de tipagem porque cada elemento é compatível com a união string | number.

Ao acessar let valor = dados[0];, o tipo inferido para valor é a própria união (string | number), já que qualquer elemento pode ser de um desses tipos.

O comando console.log(valor); imprime o valor armazenado (neste caso 300) e não causa erro de tipo em tempo de compilação.

Em resumo: a declaração usa Union Types para tornar o array heterogêneo, aceitando simultaneamente string e number.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo