# Начало дня в 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`, а в текущем моменте времени они будут иметь текущие значения, а не полночь.

Определите, сколько часов прошло между началом дня и текущим моментом времени.

←→
↑
en ru