【问题标题】:Moment.js compare two date thrown a warningMoment.js 比较两个日期抛出警告
【发布时间】:2016-12-15 00:09:21
【问题描述】:

我创建了一个简单的应用程序,需要进行日期比较。我使用了 Moment.js,并尝试过回答这个问题:

Compare two dates in JS

Moment js date time comparison

How to compare only date in moment.js

但所有这些都不适合我。

现在我使用以下代码:

if(moment('09/12/2016').isAfter('09/11/2016')){
    console.log("True")  
} else {
    console.log("False")
}

但在控制台中却抛出了警告:

弃用警告:时刻构造回退到 js 日期。这 不鼓励使用,并将在即将发布的主要版本中删除。请 更多信息请参考http://momentjs.com/guides/#/warnings/js-date/

请大家帮帮我。这是我的小提琴https://jsfiddle.net/gq6ykw8L/

【问题讨论】:

    标签: javascript date momentjs


    【解决方案1】:

    您的日期字符串在 DD/MM/YYYYMM/DD/YYYY 之间不明确。如果您参考警告中给出的链接 (http://momentjs.com/guides/#/warnings/js-date/),它会说:

    当没有找到已知格式时,将引发此弃用警告 传递给字符串构造函数的日期。 要解决此问题, 指定传递给 moment() 的字符串的格式。

    您需要使用moment(String, Format) 指定日期字符串的格式。

    moment('09/12/2016', 'DD/MM/YYYY');
    moment('09/12/2016', 'MM/DD/YYYY');
    

    【讨论】:

    • @EngkusKusnadi,isAfter 中的日期字符串正在发出警告。也使用 moment(String, Format) 将第二个日期声明为时刻。见jsfiddle.net/ozzan/gq6ykw8L/4
    猜你喜欢
    • 1970-01-01
    • 2015-08-28
    • 2015-10-07
    • 1970-01-01
    • 2011-09-01
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多