【问题标题】:How to get a date in milliseconds with moment.js如何使用 moment.js 以毫秒为单位获取日期
【发布时间】:2018-03-24 18:09:04
【问题描述】:

我正在尝试使用 moment.js 以毫秒为单位获取日期。问题是,在他们的 unix timestamp 部分的文档中,他们只有 unix timestampt 到 momentjs 格式。如何从日期开始以毫秒为单位获取 unix 时间戳? 例如:moment.unix(2010-01-01T05:06:07) => 1262318767000

【问题讨论】:

    标签: datetime momentjs unix-timestamp


    【解决方案1】:

    您也可以使用format() 获取以毫秒为单位的日期。

    moment("2010-01-01T05:06:07").format('x');

    【讨论】:

    • 它从当前日期时间返回毫秒而不是 2010-01-01T05:06:07
    • 奇怪的是它不适合你。我尝试了 moment('2019-01-19 12:35 PM').format('x') IST,它给了我 1547881500000 这是UTC。 IST = GMT + 05:30
    【解决方案2】:

    您说过“在他们的 unix 时间戳部分的文档中,他们只有 unix timestampt 到 momentjs 格式”,但事实并非如此。

    根据https://momentjs.com/docs/#/displaying/unix-timestamp-milliseconds/

    moment#valueOf 仅输出自 Unix 纪元以来的毫秒数

    所以,使用valueOf 方法:

    moment("2010-01-01T05:06:07").valueOf();
    

    但在我的机器上它返回 1262329567000。那是因为 moment.js 正在使用我的浏览器的时区 - 这个毫秒值对应于 2010 年 1 月 1 日,在我的浏览器时区的上午 05:06:07。

    您在问题中提到的值 (1262318767000) 对应于 2010 年 1 月 1 日凌晨 05:06:07,在使用偏移 +01:00 的时区:在某个比 UTC 早一小时的地方, 2010 年 1 月 1 日:https://en.wikipedia.org/wiki/List_of_UTC_time_offsets#UTC+01:00,_A

    如果您想具体说明日期/时间对应的时区,可以使用时刻时区:https://momentjs.com/timezone/

    【讨论】:

      【解决方案3】:

      你可以使用

      moment( date ).toDate().getTime();
      

      如果你喜欢使用时区

      let timezone = moment.tz.guess() || 'America/Los_Angeles';
      moment( date, timezone ).toDate().getTime();
      

      【讨论】:

        【解决方案4】:

        valueOf函数https://momentjs.com/docs/#/parsing/utc/

        console.log(moment('12/09/2021').valueOf());
        

        在上面的示例中,如果是 9 月 12 日或 1 月 9 日,则不会。最好提供格式,即您发送值的格式。

        查看以下示例,

        moment(dateValue, dateFormat).valueOf();
        

        因此,我们在这里提供了我们发送到时刻的日期格式,并再次将其转换为时刻能够理解的格式,然后从 1970 年 1 月 1 日起取出毫秒。如果您的日期小于该日期,则该值将为负数

        例子:

        console.log(moment('09/12/2021', 'DD/MM/YYYY').valueOf());
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-03
          • 2017-02-20
          • 2012-07-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-05-04
          • 2017-05-08
          相关资源
          最近更新 更多