FC ConcursosFC Concursos

Questão FC266315

Analise o seguinte algoritmo de ordenação em JavaScript e marque a alternativa que apresenta a saída da console. const numeros = [10, 2,8, 1, 5]; numeros.sort((b, a) => b - a); con

Questões sem classificação de assunto (TI - Desenvolvimento de Sistemas)

IDECAN · 2024

Analise o seguinte algoritmo de ordenação em JavaScript e marque a alternativa que apresenta a saída da console. 

 

const numeros = [10, 2,8, 1, 5]; 

numeros.sort((b, a) => b - a); 

console.log(numeros);


  1. [10,8,5,2,1]
  2. [10,8,1,2,5]
  3. [5,2,1,10,8]
  4. [1,2,5,8,10]
  5. [1,2,5,10,8]
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

O resultado é [1,2,5,8,10] porque a função passada ao sort age como um comparador numérico. Em JavaScript o primeiro argumento da função é sempre o primeiro elemento comparado e o segundo argumento é o segundo; os nomes das variáveis são irrelevantes.

A função foi escrita como (b, a) => b - a, logo, internamente ela calcula primeiro − segundo. Quando essa expressão é negativa, o primeiro elemento fica antes do segundo, o que produz ordem crescente (menor para maior).

Além disso, sort modifica o próprio array (mutação), por isso o console.log(numeros) mostra o array já ordenado: [1,2,5,8,10].

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

Continue aprendendo