Je dois valider la date de l'utilisateur et vérifier si elle est dans un format particulier. Si oui, alors ce sera accepté sinon ce ne sera pas. Je cherche une sorte de
value.match("regular expression")
Ce qui précède fonctionne bien si, je dois choisir parmi quelques formats. Alors, je suis tombé sur ce moment et je voulais savoir comment utiliser isSame (). J'ai essayé de l'implémenter mais sans succès. Comme :
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
Alors, aidez s'il vous plaît dans cela. Merci
Vérifiez si un moment est identique à un autre moment.
moment('2010-10-20').isSame('2010-10-20'); // true
Si vous souhaitez limiter la granularité à une unité autre que des millisecondes, transmettez les unités en tant que deuxième paramètre.
moment('2010-10-20').isSame('2009-12-31', 'year'); // false
moment('2010-10-20').isSame('2010-01-01', 'year'); // true
moment('2010-10-20').isSame('2010-12-31', 'year'); // true
moment('2010-10-20').isSame('2011-01-01', 'year'); // false
Votre code
var x=moment("28-02-1999","DD-MM-YYYY"); // working
x.isSame("28-02-1999"); // comparing x to an unrecognizable string
Si vous essayez moment("28-02-1999")
, vous obtenez une date non valide. Donc, comparer x à une chaîne de date non valide renvoie false.
Pour résoudre ce problème, utilisez soit le format de date par défaut (ISO 8601):
var x = moment("28-02-1999","DD-MM-YYYY");
x.isSame("1999-02-28"); // YYYY-MM-DD
Ou passez isSame
un objet moment.
var x = moment("28-02-1999","DD-MM-YYYY");
x.isSame( moment("28-02-1999","DD-MM-YYYY") );