【发布时间】:2017-01-21 08:49:05
【问题描述】:
我正在将日期字符串转换为 JavaScript 中的 Unix 时间戳。
这是我得到的:
2015 年 8 月 26 日 -- 1440561600
我应该得到什么:
2015 年 8 月 26 日 -- 1440547200
这显然是因为 GMT 未设置为 0。所以基本上我的时间是
2015 年 8 月 26 日星期三 04:00:00 GMT
真正应该转换的时间:
2015 年 8 月 26 日星期三 00:00:00 GMT
那么在我使用 Date.getTime() / 1000 之前,如何在我的约会中摆脱 GMT 呢?
我在这个网站上尝试了很多方法,但都没有奏效。注意:我不想使用 Moment.js 之类的库或其他任何东西。请告诉我。
【问题讨论】:
-
请在此处或 Google 中搜索 UTC JavaScript。这里有重复的重复
-
我有,但没有一个工作!我刚刚尝试了另一个建议使用 new Date().getTimezoneOffset() 并乘以 60 以获得以毫秒为单位的差异,然后减去原始日期 .... 仍然不起作用。你能花几秒钟写一个有效的例子吗?我相信这对你来说是小菜一碟。
-
不。不是小菜一碟,我仍然不确定您到底想要什么 - 有 UTC 和 ISO 日期。这不是重复的吗? stackoverflow.com/questions/9756120/…
-
@JohnNoob - 你从另一个答案中描述的被称为“时代转移”,如果你这样做,你必须非常小心,通常你不想完全这样做。让我们感到困惑的是,您并不清楚您的输入到底是什么以及如何解释它。你的意思是你有一个字符串
"August 26, 2015"这样的?如果是这样,你的意思是让我们假设你打算在那天推断00:00 UTC?这很好,但你应该这样陈述而不是做出这样的假设。此外,恕我直言,如果您正在处理整个日期,那么 unix 时间是一个糟糕的选择。
标签: javascript date timezone unix-timestamp