Mon application a un formulaire HTML avec certaines entrées renseignées à partir du backend et d'autres entrées entrées par l'utilisateur (dans une entrée time
.). Une fonction onChange
parcourt chaque entrée lorsque l'utilisateur modifie une valeur.
Les entrées renseignées à partir du backend sont converties en objets moment
, les dates saisies par l'utilisateur ne sont que des chaînes. Cela signifie que la fonction onChange
rencontre des objets moment
et des chaînes. J'ai besoin de savoir quelles entrées sont moment
objets et lesquelles ne le sont pas.
Quelle est la méthode recommandée pour tester si une variable est un objet moment
?
J'ai remarqué que moment
les objets ont un _isAMomentObject
mais je me demande s’il existe un autre moyen de vérifier si une variable est un objet moment
.
Une autre option que j'ai essayée est d'appeler moment
sur la variable, peu importe. Ceci convertit les variables string
en objets moment
et ne semble pas affecter les objets moment
existants.
Moment a une méthode isMoment
dans ce but. Il est difficile de trouver dans la documentation à moins de savoir quoi chercher.
Il vérifie d'abord instanceof
, puis échoue (par exemple, dans certaines situations de sous-classement ou entre domaines), il testera pour le _isAMomentObject
propriété.
Vous pouvez vérifier si c'est un moment instanceof
:
moment() instanceof moment; // true
moment () instanceof moment;
sera toujours vrai, parce que si vous avez
vous créez toujours un objet moment. Donc, le seul moyen est de vérifier comme ça