【问题标题】:How to convert GMT date time into GMT Unix TimeStamp using JS?如何使用 JS 将 GMT 日期时间转换为 GMT Unix TimeStamp?
【发布时间】: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'

标签: javascript datetime unix-timestamp gmt


【解决方案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

【讨论】:

    猜你喜欢
    • 2013-06-01
    • 2020-04-15
    • 2018-04-13
    • 1970-01-01
    • 2016-09-03
    • 2016-11-12
    • 2012-02-15
    • 2016-10-25
    • 1970-01-01
    相关资源
    最近更新 更多