1
resposta

[Sugestão] sugestão de sort decrescente

const estudantes = require("./estudantes.json");

function ordena(lista, propriedade, decrescente=false) {
    return lista.sort((a,b) => {
        if (a[propriedade] < b[propriedade]) return (decrescente ? 1 : -1);
        if (a[propriedade] > b[propriedade]) return (decrescente ? -1 : 1);
        return 0
    })
}

console.log(ordena(estudantes, "nome", true))
1 resposta

Olá, Nasser. Tudo bem?

Obrigado por compartilhar seu código aqui com a gente.

Gostei de como você implementou a função ordena com a opção de definir a ordem de forma dinâmica usando o parâmetro decrescente. Isso torna seu código mais flexível para diferentes necessidades.

Para tornar o código ainda mais enxuto, uma dica é usar a função localeCompare para comparar strings, facilitando a ordenação alfabética de forma ascendente ou descendente. Veja um exemplo:

function ordena(lista, propriedade, decrescente = false) {
    return lista.sort((a, b) => 
        decrescente 
        ? b[propriedade].localeCompare(a[propriedade]) 
        : a[propriedade].localeCompare(b[propriedade])
    );
}

Essa função ajusta a ordem com base no valor de decrescente e pode simplificar comparações de strings.

Conte com o apoio do Fórum. Abraços e bons estudos!