Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FGV 2025

ProgramaçãoLinguagens de programação
Código
fg108661
Banca
FGV
Órgão
DPE-RO
Ano
2025
Nível
Superior
Cargo
Analista de Sistemas - Classe B
A partir do lançamento do PHP 7 e do ECMAScript 2021 foram introduzidos novos recursos que impactaram a forma como os desenvolvedores escrevem e mantêm código.Com relação ao lançamento destas novas versões, analise os itens a seguir:I. ECMAScript 2021 introduziu o operador de encadeamento opcional, representado pelo codificador “ ?. “.II. ECMAScript 2021 removeu o suporte para funções assíncronas.III. PHP 7 introduziu o operador de coalescência nula, representado pelo codificador “ ?? “.Está correto o que se afirma em
  1. AI, apenas.
  2. BI e II, apenas.
  3. CI e III, apenas.
  4. DIII, apenas.
  5. EI, II e III.
Revelar gabarito e comentário

GabaritoD — III, apenas.

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”.

Operadores e novidades em PHP 7 e ECMAScript 2021

Gabarito: letra D (apenas o item III está correto). O operador de coalescência nula (??) foi introduzido no PHP 7, enquanto o operador de encadeamento opcional (?.) foi introduzido no ECMAScript 2020 (não em 2021), e funções assíncronas (async/await) existem desde o ES2017 e não foram removidas.

A questão cobra conhecimento específico sobre versões de linguagens. Vamos item a item:

Item

Afirmação

Correto?

Justificativa

I

ECMAScript 2021 introduziu o operador de encadeamento opcional (?.).

❌

O operador ?. foi introduzido no ECMAScript 2020, não em 2021.

II

ECMAScript 2021 removeu o suporte para funções assíncronas.

❌

Funções assíncronas (async/await) existem desde o ES2017 e não foram removidas.

III

PHP 7 introduziu o operador de coalescência nula (??).

✅

O operador ?? foi introduzido no PHP 7.0.

1Encadeamento opcional (?.)
Na verdade é ES2020
2Removeu async/await
Na verdade é ES2017 e permanece
3Operadores lógicos de atribuição
&&=, ||=, ??=
4PHP 7
Coalescência nula (??)
ECMAScript 2021
LEVELsoulevel.com.br
ECMAScript 2021: Encadeamento opcional (?.) (Na verdade é ES2020); Removeu async/await (Na verdade é ES2017 e permanece); Operadores lógicos de atribuição (&&=, ||=, ??=); PHP 7 (Coalescência nula (??))

Item I — ❌ Incorreto

Afirma que o operador de encadeamento opcional (?.) foi introduzido no ECMAScript 2021. Na verdade, ele foi introduzido no ECMAScript 2020 (ES2020). O ES2021 trouxe outros recursos como Promise.any, operadores de atribuição lógica (&&=, ||=, ??=) e WeakRef, mas o encadeamento opcional é de 2020.

Item II — ❌ Incorreto

Afirma que o ECMAScript 2021 removeu o suporte para funções assíncronas. Isso é falso. Funções assíncronas (async/await) foram introduzidas no ECMAScript 2017 (ES2017) e continuam presentes em todas as versões posteriores. Nenhuma versão do ECMAScript removeu funcionalidades de forma retroativa.

Item III — ✅ Correto ⟵ GABARITO

O operador de coalescência nula (??) foi introduzido no PHP 7 (especificamente PHP 7.0). Ele retorna o operando da esquerda se não for null, caso contrário retorna o da direita. É um operador útil para valores padrão.

NÃO CAIA NESSA!

A banca troca o ano do operador ?. (que é ES2020) por ES2021, e inventa uma remoção de async/await que nunca ocorreu. Fique atento aos anos corretos e ao fato de que o ECMAScript nunca remove funcionalidades já estabelecidas.

Gabarito: letra D — apenas o item III está correto.

Link permanente: /questoes/fg108661