⊗jsPmTmAA 322 of 505 menu

Automatische correctie van datums in JavaScript

JavaScript heeft een zeer interessante en nuttige eigenschap: als bij het aanmaken van een Date object een ongeldig tijdstip werd opgegeven - zal het automatisch worden omgerekend naar een geldig tijdstip. Laten we een voorbeeld bekijken.

Zoals je weet, bestaat 35 januari niet. De maximaal mogelijke dag in januari is 31. Dat betekent dat onze datum 35 januari 4 extra dagen heeft. JavaScript zal in zo'n geval simpelweg deze extra 4 dagen optellen bij de volgende maand:

let date = new Date(2018, 0, 35); console.log(date); // wordt 4 februari

Je kunt niet alleen extra dagen opgeven, maar ook extra maanden. Houd er hierbij rekening mee dat maanden bij nul beginnen, wat betekent dat de laatste geldige maand de 11de is. Als je de 12de maand opgeeft, krijg je januari van het volgende jaar:

let date = new Date(2018, 12, 1); // we geven de 12de maand op console.log(date); // wordt 1 januari 2019

De beschreven correctie werkt ook in de mindere richting. Zoals je weet, is de kleinst mogelijke dag van de maand dag nummer 1. Daarom, als je dag nummer 0 opgeeft, krijg je de laatste dag van de vorige maand:

let date = new Date(2018, 1, 0); // we geven de nulde dag op console.log(date); // wordt 31 januari

Je kunt ook negatieve waarden opgeven voor dagen en maanden. Houd er hierbij rekening mee dat de minimale dag nummer 1 heeft, en de minimale maand - nummer 0. Dit betekent dat min eerste dag valt op de 2 laatste dag van de vorige maand, en min eerste maand valt simpelweg in de laatste maand van het vorige jaar:

let date = new Date(2018, 1, -1); // we geven -1 dag op console.log(date); // wordt 30 januari
let date = new Date(2018, -1, 1); // we geven -1 maand op console.log(date); // wordt 1 december 2017

Alles hierboven beschreven werkt op dezelfde manier met uren, minuten en seconden:

let date = new Date(2018, 0, 1, 24, 0, 0); // we geven het 24ste uur op console.log(date); // wordt 2 januari, 0 uur
let date = new Date(2018, 0, 1, 25, 0, 0); // we geven het 25ste uur op console.log(date); // wordt 2 januari, 1 uur

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 1, 35); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 15, 1); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 3, 31); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 1, 31); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 12, 33); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 33, 33); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 5, 0); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 0, 0); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, -12, -33); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 0, 1, 23, 0, 60); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 0, 1, 23, 60, 0); console.log(date); // welke datum wordt het?

Bepaal naar welke datum JavaScript het volgende tijdstip zal omzetten:

let date = new Date(2018, 0, 1, 100, 100, 100); console.log(date); // welke datum wordt het?
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren