Est-ce que quelqu'un sait pourquoi dans Firefox si vous exécutez le code ci-dessous, il va le valider comme une date si la chaîne transmise est quatre chiffres et seulement quatre numéros? Dans tous les autres navigateurs que j'ai testés (IE, Chrome), il reviendra toujours comme n'étant pas une date. Etant donné que la spécification, comme indiqué par Marcel Korpel ci-dessous, indique qu'il faut se replier pour utiliser la fonction de repli spécifique à l'implémentation de Firefox, je me demande vraiment pourquoi la retombée de Firefox affiche cette anomalie.Javascript date étrangeté entre Firefox et tout le monde
function isDate(sDate) {
var temp = new Date(sDate);
if (temp.toString() == "NaN" || temp.toString() == "Invalid Date") {
alert("Not a Date");
} else {
alert("Is a Date!");
}
}
S'il vous plaît indenter votre code avec 4 espaces, ne pas utiliser les guirlandes comme vous l'avez fait. –
retourne true dans une branche, et ne retourne rien dans un autre ... ???!? –
Oui, j'essayais de faire une fonction isDate rapide et sale et j'ai oublié d'ajouter dans le retour faux. Laissez-moi juste supprimer le retour vrai pour cette discussion. –