【问题标题】:Moment js UTC date comparisonMoment js UTC日期比较
【发布时间】:2018-10-04 01:46:44
【问题描述】:

我如何立即将new Date().toUTCString()Wed, 03 Oct 2018 01:33:29 GMT 进行比较?

我试过moment(Wed, 03 Oct 2018 01:33:29 GMT).isBefore(moment(new Date().toUTCString())),但它似乎不起作用。

【问题讨论】:

  • 我认为当您创建时刻时,时刻会将日期转换为本地日期时间。因此,您需要获取 utc 值形式的矩,然后进行比较。 Here is lin 这样做的。
  • 你能举个例子吗?您希望如何进行这种转换?
  • moment(Wed, 03 Oct 2018 01:33:29 GMT) 甚至不是有效的语法 - 你在这里缺少引号吗?

标签: javascript momentjs


【解决方案1】:

按照您解释的方式,比较对我有用。检查sn-p。仅供参考,您需要在从字符串创建时刻对象时使用''

$(() => {
  var a = moment('Wed, 03 Oct 2018 01:33:29 GMT');
  var b = moment(new Date().toUTCString());
  console.log(a.isBefore(b));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>

【讨论】:

    【解决方案2】:

    你可以简单地这样做:

    moment('Thu Oct 04 2018 07:35:54 GMT+0530 (IST)').isBefore(moment())
    
    moment('Wed, 03 Oct 2018 01:33:29 GMT').isBefore(moment())
    

    这应该会给你带来价值。 (真/假)

    【讨论】:

    • moment() 默认返回 UTC 吗?那么moment.utc()的目的是什么?
    • 基本上moment 使用当前时区信息将日期返回到 localeString。如果您在任何时区使用这种格式的日期,上面的代码将为您提供正确的结果。
    猜你喜欢
    • 2018-04-24
    • 2014-05-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-30
    • 2017-07-22
    • 2023-03-20
    • 2014-06-30
    • 1970-01-01
    相关资源
    最近更新 更多