Maison > interface Web > js tutoriel > le corps du texte

Comment trier des objets par clé de date à l'aide de Array.sort() ?

Susan Sarandon
Libérer: 2024-11-02 21:53:02
original
249 Les gens l'ont consulté

How to Sort Objects by Date Key Using Array.sort()?

Tri des objets par clé de date à l'aide de Array.sort

Trier un tableau d'objets par une clé spécifique est une tâche courante en JavaScript. Cela peut être particulièrement utile lorsqu'il s'agit d'horodatages tels que « updated_at ».

Pour ce faire, nous pouvons utiliser la méthode intégrée Array.sort(). Cette méthode prend comme argument une fonction de comparaison, qui détermine l'ordre des éléments dans le tableau.

Par exemple, considérons un tableau d'objets avec une clé 'updated_at' :

[
    {
        "updated_at" : "2012-01-01T06:25:24Z",
        "foo" : "bar"
    },
    {
        "updated_at" : "2012-01-09T11:25:13Z",
        "foo" : "bar"
    },
    {
        "updated_at" : "2012-01-05T04:13:24Z",
        "foo" : "bar"
    }
]
Copier après la connexion

Pour trier ces objets en fonction de la clé 'updated_at', nous pouvons utiliser la fonction de comparaison suivante :

function compare(a, b) {
  var keyA = new Date(a.updated_at),
    keyB = new Date(b.updated_at);
  // Compare the 2 dates
  if (keyA < keyB) return -1;
  if (keyA > keyB) return 1;
  return 0;
}
Copier après la connexion

Cette fonction compare les valeurs 'updated_at' de deux objets et renvoie une valeur négative, positive ou valeur nulle selon que le premier objet est plus tôt, plus tard ou en même temps que le deuxième objet.

En passant cette fonction de comparaison à la méthode Array.sort(), nous pouvons trier le tableau d'objets dans ordre croissant de 'updated_at' :

arr.sort(compare);
Copier après la connexion

Le tableau trié résultant aura les objets classés de la plus ancienne à la dernière valeur 'updated_at'.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal