Javascript:将日期转换为UTC格式

时间:2016-12-17 04:12:34

标签: javascript mysql node.js sequelize.js

我在UTC格式中有以下日期: 2016-06-18T05:18:27.935Z

我使用下面的代码将其转换为以下格式2016-06-18 05:18:27 ,因此我可以将其与MySQL数据库中的updatedAt列进行比较。

var date = new Date(lastRequest);
date = date.getUTCFullYear() + '-' +
    ('00' + (date.getUTCMonth() + 1)).slice(-2) + '-' +
    ('00' + date.getUTCDate()).slice(-2) + ' ' +
    ('00' + date.getUTCHours()).slice(-2) + ':' +
    ('00' + date.getUTCMinutes()).slice(-2) + ':' +
    ('00' + date.getUTCSeconds()).slice(-2);

我需要获取最后一条记录的日期并将其日期转换回UTC格式。

基本上,我如何采用以下格式:2016-06-18 05:18:27回到UTC?

2 个答案:

答案 0 :(得分:1)

new Date('2016-06-18 05:18:27').toUTCString()

toUTCString()方法使用UTC时区将日期转换为字符串。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toUTCString

事实上,你的格式可能是这样的结果:

new Date('2016-06-18 05:18:27').toISOString()

顺便说一句,如果您想格式化日期,moment.jsfecha可能会更好。

您还可以在How do you convert a JavaScript date to UTC?

中找到类似的答案

答案 1 :(得分:0)

试试这个

var date = new Date(Date.now());
date = date.getUTCFullYear() + '-' +
    ('00' + (date.getUTCMonth() + 1)).slice(-2) + '-' +
    ('00' + date.getUTCDate()).slice(-2) + ' ' +
    ('00' + date.getUTCHours()).slice(-2) + ':' +
    ('00' + date.getUTCMinutes()).slice(-2) + ':' +
    ('00' + date.getUTCSeconds()).slice(-2);
print(date);
print(date.slice(0,10)+'T'+date.slice(11,19)+'.000Z');

2016-12-17 04:34:28 2016-12-17T04:34:28.000Z

http://rextester.com/SGDV59246