gpt4 book ai didi

JavaScript 日期格式和转换问题

转载 作者:行者123 更新时间:2023-11-30 12:30:51 27 4
gpt4 key购买 nike

我位于 PST 时区,我希望能够获取字符串“2014-01-01”并将其转换为 Unix 时间,而无需将“2014-01-01”转换为 PST。

这是我正在做的:

Date.parse(new Date("2014-01-01"))

我得到的值 1388534400000 相当于 2013 年 12 月 31 日星期二 16:00:00 GMT-0800(太平洋标准时间)

我想将日期取为“2014-01-01”,并且在将其转换为 Unix 时间之前不将其转换为 PST。

最佳答案

一些事情:

  • Date 构造函数返回一个 Date 对象,而不是字符串。您不应将其包装在对 Date.parse 的调用中。

    如果你想要一个 unix 时间戳,只需调用 getTime()

    var ts = new Date("2014-01-01").getTime();

    或者,您可以在根本不创建 Date 对象的情况下解析日期字符串。

    var ts = Date.parse("2014-01-01");
  • JavaScript 中日期解析的行为取决于实现。由于破折号 (-),大多数浏览器已经yyyy-mm-dd 字符串解释为 UTC。如果您将 with 替换为斜线 (/),您会看到该字符串被解释为本地时间。

  • 我认为您对输出感到困惑。你说时间戳相当于 PST,但这只是一种表现形式。它也等同于您传入的 UTC 值。它不会在输入中进行转换,而是在您将时间戳转换回本地时间时进行转换。

  • 您可以使用类似 moment.js 的库,它使您可以完全控制输入和输出。这通常是最佳选择,但会产生在您的应用程序中包含库的开销。

关于JavaScript 日期格式和转换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27748127/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com