Начало на деня в JavaScript
Нека получим обект с дата, съдържащ началото на текущия ден:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0, 0, 0);
Както вече знаете, параметрите на обекта Date
могат да се пропускат от края. В този случай часовете,
минутите и секундите ще имат стойност 0.
Нека ги пропуснем:
let now = new Date();
let date = new Date(now.getFullYear(), now.getMonth(), now.getDate());
Но денят не може да се пропусне, тъй като ако
бъде пропуснат, ще приеме стойност 1, а
на нас ни трябва текущият ден. Не може да се пропусне месец, без
да се пропусне и годината, съгласно правилата за работа
с Date.
Също така не може едновременно да се пропуснат година, месец и ден -
в този случай ще се вземе текущият
момент от време. Защо това е лошо, след като на нас
ни трябва текущата година, текущият месец и текущият
ден? Работата е там, че на нас ни трябва полунощ,
тоест часовете, минутите и секундите трябва да имат
стойност 0, а в текущия момент от време
те ще имат текущите стойности, а не полунощ.
Определете колко часа са изминали между началото на деня и текущия момент от време.