Récemment, j'ai rencontré un problème, c'est-à-dire que lors de l'obtention de la date dans le formulaire et de sa transmission en arrière-plan via json, la fonction Date.parse(str) a signalé une erreur sous ff : NAN
Après en avoir cherché Pour plus d'informations, j'ai trouvé que la raison est que la fonction Date.parse() a des exigences pour le format de date : Pour plus de détails, reportez-vous à la fonction Date.parse
Pour la date de l'opération js :
Créez un objet date :
var objDate=new Date([liste d'arguments]);
Les formes des paramètres sont les suivantes :
view plainnew Date("month dd,yyyy hh:mm:ss"); jj,aaaa");
nouvelle Date(aaaa,mois, jj,hh,mm,ss);
nouvelle Date(aaaa,mois,jj);
nouvelle Date(ms);
Description :
month : Représente le nom du mois en anglais, de janvier à décembre
mth : Représente le mois sous forme d'entier, de 0 (janvier) à 11 (décembre )
Contenu
dd : Représente le premier jour du mois Jours, de 1 à 31
aaaa : Année à quatre chiffres
hh : Heures, de 0 (minuit) à 23 ( 23h)
mm : Minutes, de 0 à 59 Entier
ss : nombre de secondes, entier de 0 à 59
ms : nombre de millisecondes, un entier supérieur ou égal à 0, indiquant la différence entre l'heure à créer et l'heure GMT du 1er janvier 1970, nombre de millisecondes.
J'ai trouvé :
La construction de date en Javascript peut également prendre en charge new Date("aaaa/MM/jj" où : MM est un entier représentant le mois de 0 (janvier) à 11 (décembre), il est donc très pratique d'utiliser des expressions régulières pour convertir des dates de chaîne.
Code de test :
Résultat de sortie :
mardi février 3 00: 00:00 UTC 0800 2009
Mardi 3 février 10:52:03 UTC 0800 2009
Mardi 3 février 00:00:00 UTC 0800 2009
Mardi 3 février 10:52: 03 UTC 0800 2009
Mardi 3 février 00:00:00 UTC 0800 2009
Mardi 3 février 10:52:03 UTC 0800 2009
NaN
NaN
Mardi 3 février 00 :00: 00 UTC 0800 2009
Mardi 3 février 00:00:00 UTC 0800 2009
Mardi 3 février 11:12:13 UTC 0800 2009
NaN
----- --- -----------
Copier le code
Le code est le suivant : window .onload=function(){ var dependVal="2005-3-4"; //Convertir en date en fonction de la chaîne de date
var regEx = new RegExp("\ -","gi" ;
//parse nécessite le format 2005/3/4
var milliseconds=Date.parse(dependedVal);
alert(milliseconds)
var dependedDate=new Date ();
dependedDate .setTime(milliseconds);
var now = new Date();
//Faites attention aux parenthèses, aux problèmes de priorité, à l'impuissance
alert("Années d'intervalle :" (now.getFullYear() - dependedDate.getFullYear()));
}
En effet, lorsque la date est transmise entre le navigateur et le serveur, la valeur en millisecondes doit être réussi, sinon une erreur 400 sera signalée !