Наша цель в этом уроке — найти количество дней между двумя датами.
В JavaScript мы можем создать объект даты, используя конструктор Date(). По умолчанию он отображает часовой пояс браузера.
var today = new Date() //Tue Oct 13 2020 21:58:37 GMT+0530 (India Standard Time)
Теперь предположим, что мы хотим проверить дату 1 января 2020 года. Существуют различные способы ее узнать. Но, самый удобный способ, как мне кажется, приведен ниже.
var start = new Date("january 1,2020"); //Wed Jan 01 2020 00:00:00 GMT+0530 (India Standard Time)
JavaScript хранит даты в миллисекундах
JavaScript хранит даты как количество миллисекунд с 01 января 1970 года, 00:00:00 UTC (всемирное скоординированное время).
Предположим, вы хотите узнать, сколько миллисекунд прошло с 01 января 1970 года до настоящего момента или до любой другой даты.
Вы можете использовать метод getTime().
var today = new Date(); console.log(today.getTime()); //1602606920593
Итак, мы фактически заложили основу для объекта Date. Теперь мы можем рассчитать количество дней между «01 января 2020 г.» и сегодняшним днем.
var start = new Date("January 1,2020"); var today = new Date(); // Number of milliseconds in a day var day = 1000 * 60 * 60 * 24; var diff = today - start; console.log(diff); // 24790433971 console.log(Math.floor(diff / day) + " days from January 1, 2020"); //286 days from January 1, 2020