JavaScript:
Twee datums vergelijken

Hoe:

JavaScript’s Date objecten komen goed van pas. Wanneer je ze vergelijkt, worden ze omgezet in milliseconden sinds 1 januari 1970, UTC.

let date1 = new Date('2021-07-24');
let date2 = new Date('2021-07-25');

console.log(date1 < date2); // waar
console.log(date1 > date2); // onwaar
console.log(date1.getTime() === date2.getTime()); // onwaar

Voorbeeld output:

waar
onwaar
onwaar

Diepere duik

Achter de schermen zijn Date objecten gewoon milliseconden. Historisch gezien moesten programmeurs datumoperaties handmatig beheren, de verstreken tijd berekenen vanaf een ijkpunt, waarbij ze vaak fouten riskeerden. Het vergelijken van Date objecten maakt het leven makkelijker, hoewel nog steeds niet foutvrij, vooral met tijdzones en zomertijd.

Alternatieven? Zeker. Bibliotheken zoals moment.js of date-fns helpen bij het omgaan met complexe scenario’s en bieden extra gemakken voor datumanipulatie.

Wat betreft de implementatie, is het belangrijk te onthouden dat het direct vergelijken van Date objecten (met ==) verwijzingen vergelijkt, niet waarden. Gebruik getTime() voor een accurate waardevergelijking. En let op tijdzones bij het parseren van datums; het is makkelijk om struikelblokken te vinden als je niet voorzichtig bent.

Zie ook