Sorter en rekke objekter etter dato -eiendom i JavaScript

Sorter en rekke objekter etter dato -eiendom i JavaScript
Noen ganger lagrer utviklere dato -objekter i en rekke objekter i tilfeldig sekvens, og de vil sortere datoene i en bestemt rekkefølge, for eksempel stigende rekkefølge eller synkende rekkefølge. For å gjøre dette gir JavaScript sort () -metoden for å sortere objektene.

Denne opplæringen vil beskrive prosedyren for å sortere rekke objekter etter dato -eiendom i JavaScript.

Hvordan sortere JavaScript -utvalg av objekter etter dato -eiendom?

For å sortere objekter i en matrise etter dato -eiendom, trekke de to datoene ved å ringe "sortere()”Metode på en matrise. Array. Mer spesifikt, når to verdier sammenlignes, overfører sort () -metoden verdiene til sammenligningsfunksjonen og ordrer verdiene basert på det (negative, null, positive) resultatet den returnerer.

Syntaks

Følg den gitte syntaks for å sortere rekke objekter:

sorter ((a, b) => a.Dato - b.Dato )

Her, i Arrow -funksjonen, trekker du tilbake det første dato -objektet fra det andre datoobjektet. Den returnerer utgangen i (+ve, -ve eller 0). Hvis den resulterende verdien er -ve, “en”Er bestilt før”b”. Hvis resultatet er +ve, “b”Er sortert foran“en”.

Eksempel 1: Sorter en rekke objekter i stigende rekkefølge etter dato ved bruk av sort () -metode

I dette eksemplet vil vi sortere en rekke objekter i stigende rekkefølge. Først må du lage en rekke objekter som heter “Array”Som lagrer tre objekter som inneholder datoobjekter med ID -er:

const array = [
Id: 5, Dato: Ny dato (2008, 2, 23),
Id: 11, dato: Ny dato (2010, 11, 20),
Id: 15, dato: Ny dato (2000, 10, 08),
];

Ring "sortere()”Metode for å sortere en rekke objekter ved en dato -egenskap ved å bruke pilfunksjonen:

const AscSort = Array.Sorter ((obj1, obj2) =>
obj1.Dato - obj2.Dato,
);

Til slutt, skriv ut den sorterte matrisen på konsollen:

konsoll.Logg (ASCSORT);

Utgangen indikerer at datoobjektene er sortert i stigende rekkefølge:

Eksempel 2: Sorter en rekke objekter i synkende rekkefølge etter dato ved bruk av sort () -metode

For å sortere matrisen i synkende rekkefølge, trekker vi det andre dato -objektet fra første dato -objekt:

const AscSort = Array.Sorter ((obj1, obj2) =>
obj2.Dato - obj1.Dato,
);

Produksjon

Vi har samlet all nødvendig informasjon som er relevant for å sortere rekke objekter etter dato -eiendom i JavaScript.

Konklusjon

For å sortere en rekke objekter etter dato -eiendom, bruk "sortere()”Metode ved å ringe den på en matrise og trekke fra de to datoobjektene. Når to verdier blir sammenlignet, overfører sort () -metoden verdiene til sammenligningsfunksjonen og ordrer verdiene basert på det (negative, null, positive) resultatet den returnerer. I denne opplæringen beskrev vi prosedyren for å sortere utvalget av objekter etter dato -eiendom i JavaScript.