Em TypeScript 4, é possível usar o seguinte fragmento de código

Em TypeScript 4, é possível usar o seguinte fragmento de código

 CESGRANRIO 2021 - QUESTÃO 48

Em TypeScript 4, é possível usar o seguinte fragmento de código:

// definir x
const y = (...args: number[]) => args.reduce(x, 0);

Que fragmento de código apresenta uma versão compilável e executável da definição de x que poderia aparecer no lugar do comentário “// definir x” ?

(A) const x = 1;
(B) const x = [1,2,3];
(C) const x = (a:number) => [a*2];
(D) const x = (a:number[]) => a[0];
(E) const x = (a:number,b:number) => a+b;


QUESTÃO ANTERIOR:

GABARITO:
(E) const x = (a:number,b:number) => a+b;

RESOLUÇÃO (Por: Tiago Ribeiro de Barros*):
O segredo da questão está no reduce. O reduce() é um método JavaScript que espera receber uma função reducer com quatro parâmetros, a saber: 

• Acumulador (acc)
• Valor Atual (cur)
• Index Atual (idx)
• Array original (src

O reduce executará a função de callback (função reducer) para cada elemento do array, retornando ao final, o acumulador com o valor atualizado. Em termos mais simples e limitando o poder do método reduce, ocorrerá a soma do acumulador com o valor atual (acc + cur) em modo sequencial até o final da operação.

Assim, a alternativa E é a correta, dado que é a única que segue a estrutura de uma função reducer recebendo uma callback com dois dos quatro parâmetros supracitados.

PRÓXIMA QUESTÃO:

QUESTÃO DISPONÍVEL EM:
*resolução enviado por colaborador. Saiba mais.

COMENTÁRIOS

Todas as Postagens Não foram encontradas postagens VEJA TODOS Leia Mais Resposta Cancelar resposta Deletar Por Home PAGINAS POSTS Veja todos RECOMENDADOS PARA VOCÊ Tudo Sobre ARQUIVOS BUSCAR TODOS OS POSTS Nenhuma postagem foi encontrada Voltar para Home Domingo Segunda Terça Quarta Quinta Sexta Sábado Dom Seg Ter Qua Qui Sex Sab Janeiro Fevereiro Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro Jan Fev Mar Abr Maio Jun Jul Ago Sep Out Nov Dez Agora mesmo 1 minuto atrás $$1$$ minutos agora 1 hora atrás $$1$$ horas atrás Ontem $$1$$ dias atrás $$1$$ semanas atrás mais de 5 semanas atrás Seguidores Seguir CONTEÚDO PREMIUM BLOQUEADO PASSO 1: Compartilhar em uma rede social PASSO 2: Clique no link na sua rede social Copiar todo o código Selecionar todo o código Todos os códigos foram copiados Não é possível copiar os códigos / textos, pressione [CTRL] + [C] para copiar Tabela de conteúdo