Как установить необязательную дату? : Миллисекунды на сегодняшний день - PullRequest
0 голосов
/ 20 апреля 2020

Полагаю, это происходит из-за разного часового пояса. когда я звоню 2020-01-01, он возвращает 2019-12-31.

Любая помощь? пожалуйста, только ваниль JS.

var automationStartDate = function(yy, mm, dd){
  let date = new Date(yy, mm, dd);

  var year = date.getFullYear(yy);
  var month = date.getMonth(mm);
  var day = date.getDay(dd);

  return date;
}

console.log(automationStartDate(2020,00,01));
// It returns 2019-12-31T15:00:00.000Z
// I suppose this should return 2020-01-01T15:00:00

1 Ответ

0 голосов
/ 20 апреля 2020

.setFullYear() устанавливает только часть даты «yy, mm, dd», а не «h, m, s».

Вы можете использовать метод .setHours(), чтобы установить " h, m, s "part.


Мой предыдущий ответ был:

Используйте соответствующий конструктор:

let date = new Date(yy, mm, dd, h, m ,s);

но я забыл этот конструктор понимает только даты UT C, и вам нужно манипулировать датой в вашем местном часовом поясе.

Она должна возвращать ожидаемую вами дату.


См. ссылки на MDN. :

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...