【问题标题】:moment.js second argument not workingmoment.js 第二个参数不起作用
【发布时间】:2018-01-05 09:31:47
【问题描述】:

不确定为什么以下内容返回 false。第二个参数中指定的格式正是我在初始化 Bootstrap Datetimepicker 时指定的格式。

moment('Fri 5 Jan, 2018 - 05:00 PM', 'ddd d MMM, YYYY - hh:mm A').isValid()

我正在尝试将第一个参数中的 datetime 转换为 YYYY-MM-DD HH:mm 格式,但 moment 一直返回 Invalid Date 错误。

【问题讨论】:

  • 日期格式不正确
  • 这对我来说返回 true(有效)
  • 您使用的是哪种浏览器?
  • @Riscie 它给出了错误
  • @UmeshAawte Chrome 63.0

标签: javascript datetime momentjs bootstrap-datetimepicker


【解决方案1】:

根据documentation,您应该使用大写D作为日期数字(1 月 5 日),而您现在使用小写 d

moment('Fri 5 Jan, 2018 - 05:00 PM', 'ddd D MMM, YYYY - hh:mm A').isValid();

Live example

【讨论】:

    【解决方案2】:

    您需要使用时区。如果没有时区,您可能会得到错误的结果。

    var dateFormat = 'ddd D MMM, YYYY - hh:mm A';
    
    moment(moment("Fri 5 Jan, 2018 - 05:00 PM",'Asia/kolkata').format(dateFormat),dateFormat).isValid();
    

    【讨论】:

      猜你喜欢
      • 2011-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-26
      相关资源
      最近更新 更多