1
resposta

Problemas com ordenação

estou com dificuldades para ordenar esta lista. preciso ordena-la pelo valor e de forma decrescente, já tentei alguns métodos e não consegui, se alguém puder ajudar eu agradeço.

const lista = [{"Morango": 3}, {"Cubo 3kg": 4}, {"Côco": 10}, {"Cubo 1kg": 11}, {"Maracujá": 13}, {"Cubo 2kg": 35}, {"Gelo Barra 9kg": 51}]
1 resposta

Olá Darlan tudo bem ?

Pra você ordenar essa lista primeiro você precisa estruturar ela, vou deixar um exemplo abaixo:

const lista = [ { nome: "Morango", valor: 3}, { nome: "Cubo 3kg", valor: 4}, { nome: "Côco", valor: 10}, { nome: "Cubo 1kg", valor: 11}, { nome: "Maracujá", valor: 13}, { nome: "Cubo 2kg", valor: 35}, { nome: "Gelo Barra 9kg", valor: 51} ];

O javascript também possui uma funcao nativa para ordenar uma lista onde vc passa uma regra no seu caso onde "o Valor A Maior que o Valor B" Exemplo:

lista.sort((a, b) => a.valor > b.valor ? 1 : -1); console.log("minha lista ordenanda => ", lista); Eu usei um if ternario que é uma simplificação de um if normal ao inves de eu fazer:

if (a.valor > b.valor) { return 1 } else { return -1 }

Você pode estudar mais sobre a função SORT aqui MDN Web Docs