⊗jsPmTmAA 322 of 505 menu

Automatisk korrektion af datoer i JavaScript

JavaScript har en meget interessant og nyttig egenskab: hvis der angives et ugyldigt tidspunkt ved oprettelse af et Date-objekt - vil det automatisk blive omregnet til et gyldigt. Lad os se på et eksempel.

Som du ved, eksisterer den 35. januar ikke. Den maksimalt mulige dag i januar er den 31. Det betyder, at vores dato den 35. januar har 4 ekstra dage. JavaScript vil i sådant tilfælde blot tilføje disse ekstra 4 dage til den næste måned:

let date = new Date(2018, 0, 35); console.log(date); // bliver den 4. februar

Man kan angive ikke kun ekstra dage, men også måneder. Man bør huske, at måneder starter fra nul, hvilket betyder at den sidste gyldige måned er den 11te. Hvis man angiver den 12te måned, får man januar næste år:

let date = new Date(2018, 12, 1); // angiver den 12te måned console.log(date); // bliver den 1. januar 2019

Den beskrevne korrektion fungerer også nedad. Som du ved, er den mindste dag i måneden dag nummer 1. Derfor, hvis man angiver dag nummer 0, får man den sidste dag i den foregående måned:

let date = new Date(2018, 1, 0); // angiver nulte dag console.log(date); // bliver den 31. januar

Man kan også angive negative værdier for dage og måneder. Man bør huske, at den mindste dag har nummer 1, og den mindste måned har nummer 0. Det betyder, at minus første dag falder på den 2. dag fra slutningen af den foregående måned, og minus første måned falder simpelthen på den sidste måned i det foregående år:

let date = new Date(2018, 1, -1); // angiver -1 dag console.log(date); // bliver den 30. januar
let date = new Date(2018, -1, 1); // angiver -1 måned console.log(date); // bliver den 1. december 2017

Alt ovenstående fungerer analogt med timer, minutter og sekunder:

let date = new Date(2018, 0, 1, 24, 0, 0); // angiver den 24 time console.log(date); // bliver den 2. januar, 0 timer
let date = new Date(2018, 0, 1, 25, 0, 0); // angiver den 25 time console.log(date); // bliver den 2. januar, 1 time

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 1, 35); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 15, 1); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 3, 31); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 1, 31); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 12, 33); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 33, 33); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 5, 0); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 0, 0); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, -12, -33); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 0, 1, 23, 0, 60); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 0, 1, 23, 60, 0); console.log(date); // hvilken dato bliver det?

Bestem, hvilken dato JavaScript vil omdanne følgende tidspunkt til:

let date = new Date(2018, 0, 1, 100, 100, 100); console.log(date); // hvilken dato bliver det?
Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis