Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — CESPE / CEBRASPE 2023

ProgramaçãoLinguagens de programação
Código
ce153417
Banca
CESPE / CEBRASPE
Órgão
DATAPREV
Ano
2023
Nível
Superior
Cargo
Analista de Tecnologia da Informação - Perfil: Desenvolvimento de Software
Julgue o item abaixo, relacionados com JavaScript, Web Services e análise estatística de código-fonte.Para garantir uma correta compilação de um código escrito em JavaScript, é necessário que as variáveis sejam definidas e inicializadas antes de seu uso no código.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoE — Errado

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

JavaScript – Hoisting e declaração de variáveis

Gabarito: ERRADO. A afirmação de que é necessário definir e inicializar variáveis antes do uso para garantir a correta compilação de JavaScript é falsa. JavaScript é uma linguagem interpretada (ou compilada JIT) e possui o mecanismo de hoisting, que eleva declarações de variáveis (com var) para o topo do escopo, permitindo que sejam referenciadas antes da linha de declaração – embora o valor seja undefined até a inicialização. Além disso, a tipagem dinâmica não exige inicialização explícita.

Declaração de variáveis em JS
  • 1var
    • Hoisting (eleva declaração)
    • Valor undefined até inicialização
    • Pode usar antes da linha de declaração
  • 2let / const
    • Hoisting (declaração elevada)
    • Zona morta temporal
    • Erro se acessar antes da declaração
  • 3Tipagem dinâmica
    • Não exige inicialização explícita
LEVEL · soulevel.com.br
NÃO CAIA NESSA!

A banca tenta confundir JavaScript com linguagens compiladas como Java ou C, nas quais a declaração (e geralmente a inicialização) é obrigatória antes do uso. Em JavaScript, o hoisting com var torna a afirmação incorreta. Já com let e const há a zona morta temporal, mas ainda assim o erro conceitual persiste – a questão fala genericamente de "variáveis" sem especificar o tipo de declaração.

A afirmação está ERRADA. JavaScript não exige que variáveis sejam definidas e inicializadas antes do uso; a declaração pode ocorrer após o uso (com var) e a inicialização pode ser posterior.

Gabarito: E (Errado)

Link permanente: /questoes/ce153417