Maison >interface Web >js tutoriel >Comment trier un tableau d'objets par valeur de propriété en JavaScript ?

Comment trier un tableau d'objets par valeur de propriété en JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-20 13:27:14798parcourir

How do I Sort an Array of Objects by Property Value in JavaScript?

Tri d'un tableau d'objets par valeurs de propriété en JavaScript

JavaScript fournit une solution élégante pour trier un tableau d'objets par une propriété spécifique. Cette fonctionnalité est essentielle pour organiser des listes, récupérer des éléments distincts et effectuer des analyses de données.

Énoncé du problème :

Vous avez récupéré un tableau d'objets via AJAX et souhaitez triez-les en fonction de la propriété « prix ». Le tri doit permettre à la fois l'ordre croissant et décroissant.

Solution :

Ordre croissant

Pour trier les objets dans ordre croissant de prix, utilisez la fonction JavaScript suivante :

homes.sort((a, b) => parseFloat(a.price) - parseFloat(b.price));

Alternativement, pour ES6 et supérieur :

homes.sort((a, b) => a.price - b.price);

Ordre décroissant

Pour trier les objets par ordre décroissant de prix, utilisez :

homes.sort((a, b) => parseFloat(b.price) - parseFloat(a.price));

Ou dans ES6 :

homes.sort((a, b) => b.price - a.price);

N'oubliez pas d'analyser les prix des chaînes en nombres (parseFloat) avant de comparer eux.

Exemple :

Pour la gamme d'objets donnée, le tri par prix par ordre croissant donne :

[
  {
    "h_id": "3",
    "city": "Dallas",
    "state": "TX",
    "zip": "75201",
    "price": "162500"
  },
  {
    "h_id": "4",
    "city": "Bevery Hills",
    "state": "CA",
    "zip": "90210",
    "price": "319250"
  },
  {
    "h_id": "5",
    "city": "New York",
    "state": "NY",
    "zip": "00010",
    "price": "962500"
  }
]

Et par ordre décroissant :

[
  {
    "h_id": "5",
    "city": "New York",
    "state": "NY",
    "zip": "00010",
    "price": "962500"
  },
  {
    "h_id": "4",
    "city": "Bevery Hills",
    "state": "CA",
    "zip": "90210",
    "price": "319250"
  },
  {
    "h_id": "3",
    "city": "Dallas",
    "state": "TX",
    "zip": "75201",
    "price": "162500"
  }
]

Cette capacité de tri permet une manipulation flexible et efficace des données dans les applications JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn