如何使用 JS 将 GMT 日期时间转换为 GMT Unix TimeStamp?

Posted

技术标签:

【中文标题】如何使用 JS 将 GMT 日期时间转换为 GMT Unix TimeStamp?【英文标题】:How to convert GMT date time into GMT Unix TimeStamp using JS? 【发布时间】:2019-01-27 14:47:07 【问题描述】:

我知道有多种方法可以将日期时间转换为 Unix 时间戳

但问题是当我们将 GMT 的日期时间值转换为 Unix 时间戳时,它会根据我当地时区的值(即亚洲/加尔各答)显示时间戳的值

例如: GMT 的日期时间为:2018-08-21 11:37:56 所以当我将其转换为 Unix 时间戳时,它返回如下:

var t = new Date('2018-08-21 11:37:56').getTime() / 1000;
console.log(t); // 1534831676

我正在寻找1534851476,它是根据 GMT 时区的值。

这是根据我当地时区亚洲/加尔各答的 Unix 时间戳。谁能帮我将 Unix 时间戳值转换为 GMT?

更多信息:您可以在这里on this link查看GMT日期时间的Unix时间戳值。

谢谢!

【问题讨论】:

试试new Date('2018-08-21T11:37:56Z').getTime() / 1000 如果你在日期字符串中不包含时区信息,你怎么能指望它知道你想要UTC时间? 在这一点上,日期构造函数的某些输入变体 do 假设 UTC :p @JaromandaX 我在数据库中的日期时间值为 2018-08-21 11:37:56。 这很容易改变...'2018-08-21 11:37:56'.replace(' ', 'T')+'Z' 【参考方案1】:

没有时区,新日期假定为本地时间

所以,假设您检索字符串

var date = '2018-08-21 11:37:56';

你能做的是

var date = '2018-08-21 11:37:56';
var t = new Date(date.replace(' ', 'T') + 'Z').getTime() / 1000;
console.log(t); // 1534851476 - see for yourself

【讨论】:

以上是关于如何使用 JS 将 GMT 日期时间转换为 GMT Unix TimeStamp?的主要内容,如果未能解决你的问题,请参考以下文章

如何将本地日期转换为 GMT [重复]

用户日期时间设置为 GMT,如何将日期转换为其本地化设置?

如何使用 MQ 的 esql 将日期的特定时区转换为 GMT 时区?

如何将日期/时间从 GMT 转换为本地时区

如何将php日期格式转换为GMT,反之亦然?

将 GMT+# 格式的日期时间转换为 GMT