Introdução
Neste laboratório, aprenderemos como ordenar um array de objetos alfabeticamente com base em uma propriedade específica usando JavaScript. Utilizaremos o método Array.prototype.sort() e o método String.prototype.localeCompare() para comparar os valores da propriedade fornecida. Isso nos permitirá ordenar facilmente o array em ordem crescente ou decrescente, dependendo de nossos requisitos.
Como Ordenar um Array Alfabeticamente com Base em uma Propriedade Específica em JavaScript
Para ordenar um array de objetos alfabeticamente com base em uma propriedade específica em JavaScript, siga estes passos:
- Abra o Terminal/SSH e digite
nodepara começar a praticar a codificação. - Use
Array.prototype.sort()para ordenar o array com base na propriedade fornecida. - Use
String.prototype.localeCompare()para comparar os valores da propriedade fornecida.
Aqui está um trecho de código de exemplo que você pode usar:
const alphabetical = (arr, getter, order = "asc") =>
arr.sort(
order === "desc"
? (a, b) => getter(b).localeCompare(getter(a))
: (a, b) => getter(a).localeCompare(getter(b))
);
Você pode chamar a função alphabetical com um array de objetos e a função getter que retorna a propriedade a ser ordenada. Aqui está um exemplo de uso:
const people = [{ name: "John" }, { name: "Adam" }, { name: "Mary" }];
alphabetical(people, (g) => g.name);
// [ { name: 'Adam' }, { name: 'John' }, { name: 'Mary' } ]
alphabetical(people, (g) => g.name, "desc");
// [ { name: 'Mary' }, { name: 'John' }, { name: 'Adam' } ]
Resumo
Parabéns! Você concluiu o laboratório de Ordenação de Array Alfabeticamente. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.