Dagens början i JavaScript
Låt oss skapa ett datumobjekt som innehåller början av aktuell dag:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 0, 0);
Som du redan vet kan parametrar för objektet Date
utelämnas från slutet. I detta fall kommer timmar,
minuter och sekunder att ha värdet 0.
Låt oss utelämna dem:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate());
Däremot kan dagen inte utelämnas, eftersom om
den utelämnas kommer den att anta värdet 1, och
vi behöver den aktuella dagen. Att utelämna månaden, utan
att utelämna året, går inte heller enligt reglerna för
Date.
Att utelämna år, månad och dag samtidigt
går inte heller - i detta fall kommer det aktuella
tidpunkten att användas. Varför är detta dåligt, eftersom vi
behöver aktuellt år, aktuell månad och aktuell
dag? Saken är den att vi behöver midnatt,
det vill säga timmar, minuter och sekunder ska ha
värdet 0, medan de i den aktuella tidpunkten
kommer att ha aktuella värden, inte midnatt.
Bestäm hur många timmar som har förflutit mellan början av dagen och den aktuella tidpunkten.