如何使用MomentJS在UTC中获取带有明天日期和特定时间的日期对象?

时间:2018-12-06 08:19:48

标签: javascript datetime momentjs

我正在尝试获取一个带有明天日期的日期对象,该日期对象是上午08:00:00。 我试过了,但是它只是返回明天的日期,但是是在当地的08:00 AM时间,而不是UTC。

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

有没有办法在UTC中获取该日期时间对象?

3 个答案:

答案 0 :(得分:1)

您只需要调用该对象的.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>

答案 1 :(得分:1)

无需使用momentjs

您可以使用 JavaScript Date Date.UTC() method来做到这一点:

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));

答案 2 :(得分:0)

您可以在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>