【问题标题】:How to get unix timestamp from Y-m-d date in JS?如何从 JS 中的 Y-m-d 日期获取 unix 时间戳?
【发布时间】:2015-05-02 18:17:19
【问题描述】:

我有这个日期。 2014-11-15
PHP 的时间戳是 1415984400

如何在 Javascript 中获取这个时间戳?

这些是我尝试的结果。

Date.parse('2014-11-15').getTime()/1000

错误:Date.parse(...).getTime 不是函数

Date.parse('2014-11-15')/1000

1416009600

new Date('2014-11-15').getTime() / 1000;

1416009600

没有一个能正确转换。

更新:-----

<?php echo date('Y-m-d H:i:s', '1416009600'); ?> 

结果:

2014-11-15 07:00:00

看起来像是 GMT 问题。 (这里是GMT+7) Javascript语言如何转换为unix时间戳?

【问题讨论】:

  • @Satpal 返回 1416009600

标签: javascript unix-timestamp gmt


【解决方案1】:

JavaScript 正在返回正确的 GMT 结果,但您期待另一个时区。您必须自己修复结果。如果您可以信任 JavaScript 使用的任何设置来确定当地时间,您可以使用:

(New Date()).getTimezoneOffset()

此方法返回分钟,因此您需要将返回值乘以 60,然后再从 unix 时间戳中减去。

【讨论】:

  • (new Date(date_str).getTime() / 1000) + ((new Date()).getTimezoneOffset()*60) 谢谢。 :)
  • 这不是真正的答案。 OP 中的格式将被某些浏览器(例如 IE 8)视为无效,某些浏览器(例如某些版本的 Chrome、Safari 和可能其他版本)将视为无效,而其他浏览器将视为 UTC。还有许多其他的 ECMAScript 实现可以做上述任何一种。
猜你喜欢
  • 2010-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-28
相关资源
最近更新 更多