Questão nº 31

Questão de Tecnologia da Informação · FCC TRT-12 2023 (nº 31)

FCC2023Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Cver comentário ↓

Considere o bloco de código TypeScript a seguir:

```
pessoa = ['Paulo Freitas', 'Rua Barreto de Freitas', 45];
console.log(pessoa);
```

Para que o bloco seja executado corretamente, em condições ideais, a tupla `pessoa` deve ter sido definida anteriormente pela instrução

Resposta comentada

Gabarito Alternativa C

Uma tupla em TypeScript é um tipo de array com um número fixo de elementos, onde cada elemento tem um tipo específico e uma posição definida.

(A) Incorreta: A sintaxe `pessoa[3]` está incorreta para declarar uma variável e seu tipo. Além disso, `[any]` indicaria uma tupla de apenas um elemento do tipo `any`, o que não corresponde aos três elementos presentes.
(B) Incorreta: A sintaxe `pessoa[3]` é inválida para declaração de variável. Se fosse `let pessoa;`, o tipo seria inferido como `any[]` (array de qualquer coisa) ou `(string | number)[]` (array de string ou number), mas não uma tupla específica.
(C) Correta: Esta é a forma correta de declarar uma tupla em TypeScript. `let pessoa:` indica que estamos declarando a variável `pessoa` e seu tipo. `[string, string, number]` define que `pessoa` é uma tupla que contém exatamente três elementos: o primeiro é uma `string`, o segundo é uma `string` e o terceiro é um `number`. Isso corresponde perfeitamente aos dados `['Paulo Freitas', 'Rua Barreto de Freitas', 45]`.
(D) Incorreta: Esta alternativa contém duas armadilhas. Primeiro, `String` (com S maiúsculo) e `Number` (com N maiúsculo) referem-se aos objetos construtores JavaScript, não aos tipos primitivos `string` e `number` do TypeScript. Segundo, o operador `typeof` é usado para obter o tipo de uma expressão ou variável, não para construir um tipo literal de tupla dessa forma. `typeof[String, String, Number]` resultaria em um tipo complexo e incorreto para o que se deseja.
(E) Incorreta: A sintaxe `pessoa[string, string, number]` está incorreta para a declaração de tipo. A anotação de tipo deve vir após dois pontos (`:`), como em `let pessoa: [string, string, number];`.

Fonte: FCC TRT-12 2023 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 003). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho