Javascript moment.js或日期验证中的IsName()函数

Javascript moment.js或日期验证中的IsName()函数,javascript,validation,date,momentjs,Javascript,Validation,Date,Momentjs,我需要验证来自用户的日期,并检查它是否为特定格式。如果是,则接受,否则不接受。我在找一种 value.match("regular expression") 如果我必须从几种格式中进行选择,则上述格式可以很好地工作。因此,我遇到了this moment.js,并对如何使用isSame()感兴趣。我试图实现它,但没有成功。比如: var x=moment("MM/DD/YYYY") ; x.isSame("28-02-1999"); // am getting false which is

我需要验证来自用户的日期,并检查它是否为特定格式。如果是,则接受,否则不接受。我在找一种

value.match("regular expression") 
如果我必须从几种格式中进行选择,则上述格式可以很好地工作。因此,我遇到了this moment.js,并对如何使用isSame()感兴趣。我试图实现它,但没有成功。比如:

var x=moment("MM/DD/YYYY") ;
x.isSame("28-02-1999");  // am getting false which is right
var x=moment("28-02-1999","DD-MM-YYYY") ;
x.isSame("28-02-1999");  // am getting false which is wrong
所以,请帮忙。 谢谢

检查某一时刻是否与另一时刻相同

moment('2010-10-20')。Isame('2010-10-20');//正确

如果要将粒度限制为毫秒以外的单位, 将单位作为第二个参数传递

moment('2010-10-20')。isame('2009-12-31','year');//错误

moment('2010-10-20')。Isame('2010-01-01','year');//正确

moment('2010-10-20')。Isame('2010-12-31','year');//正确

moment('2010-10-20')。Isame('2011-01-01','year');//错误

你的代码

var x=moment("28-02-1999","DD-MM-YYYY"); // working
x.isSame("28-02-1999"); // comparing x to an unrecognizable string
如果您尝试
时刻(“28-02-1999”)
,您会得到一个无效的日期。因此,将x与无效的日期字符串进行比较将返回false

要解决此问题,请使用(ISO 8601):

或者传递一个力矩对象

var x = moment("28-02-1999","DD-MM-YYYY");
x.isSame( moment("28-02-1999","DD-MM-YYYY") );

虽然我已经解决了我的问题,但我仍然需要关于上述函数的更多信息。关于这个问题,我已经解决了
var x = moment("28-02-1999","DD-MM-YYYY");
x.isSame( moment("28-02-1999","DD-MM-YYYY") );