Как получить объект даты с завтрашней датой и определенным временем в UTC, используя MomentJS? - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь получить объект даты с завтрашней датой в 08:00:00.Я попробовал это, но он просто возвращает завтрашнюю дату, но по местному времени 08:00, а не в UTC.

var tomorrow = moment(new Date()).add(1,'days');
tomorrow.set('hour', 8);
tomorrow.set('minute', 0);
tomorrow.set('second', 0);

Есть ли способ получить объект datetime в UTC?

Ответы [ 3 ]

0 голосов
/ 06 декабря 2018

Нет необходимости использовать momentjs.

. Вы можете сделать это с помощью JavaScript Date и Date.UTC(). как это:

var d = new Date(); 
var now_utc =  Date.UTC(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate() + 1,
 8, 0, 0);
console.log(new Date(now_utc));
0 голосов
/ 06 декабря 2018

Вы можете сделать это достаточно легко в moment.js:

var timeUtc = moment.utc().startOf('day').add(1, 'days').add(8, 'hours');
console.log("Output time: ", timeUtc.toISOString());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
0 голосов
/ 06 декабря 2018

Вам просто нужно вызвать .utc() функцию этого объекта.

var tomorrow = moment(new Date()).add(1,'days');
tomorrow.set('hour', 8);
tomorrow.set('minute', 0);
tomorrow.set('second', 0);

console.log(tomorrow.utc());
<script src="https://momentjs.com/downloads/moment.js"></script>
...