Datumformattering in JavaScript
Laten we nu leren hoe we een datum in een specifiek formaat kunnen weergeven. Stel dat we bijvoorbeeld de huidige dag, maand en jaar op het scherm willen weergeven in het formaat jaar-maand-dag.
Laten we dit doen:
let date = new Date();
console.log(date.getFullYear() + '-' + date.getMonth() + '-' + date.getDate());
Onze code heeft echter een probleem: de maandnummers beginnen bij nul, terwijl we waarschijnlijk wilden dat ze bij één beginnen.
Laten we het probleem oplossen:
let date = new Date();
console.log(date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate());
Onze code is echter nog steeds niet perfect.
Dit is alleen te merken in bepaalde
maanden en op bepaalde dagen. Stel, bijvoorbeeld,
dat het nu 5 maart 2020 is.
In dat geval wordt onze datum weergegeven in het formaat 2020-3-5. Terwijl we willen dat de datum wordt weergegeven in het formaat 2020-03-05 - met nullen voor de dagen en maanden die uit één cijfer bestaan.
Om het probleem op te lossen, schrijven we een functie addZero,
die nullen toevoegt voor getallen
van 0 tot 9:
function addZero(num) {
if (num >= 0 && num <= 9) {
return '0' + num;
} else {
return num;
}
}
Laten we de gemaakte functie toepassen en nu werkelijk de datum in het gewenste formaat krijgen:
let date = new Date();
console.log(
addZero(date.getFullYear()) + '-' +
addZero(date.getMonth() + 1) + '-' +
addZero(date.getDate())
);
Geef de huidige datum-tijd weer op het scherm in het formaat 12:59:59 31.12.2014. Gebruik voor alle datumonderdelen (behalve het jaar) onze gemaakte functie om een nul toe te voegen indien nodig.