aïe effectivement c'est pas glop!
bah je vais arranger ca en mettant des int.
Merci ^^
aïe effectivement c'est pas glop!
bah je vais arranger ca en mettant des int.
Merci ^^
Toute la séquence de switch est inutile.
Pour transformer la valeur en retour de la méthode getMonth(), il suffit d'additionner 1.
Sinon, juste pour faire remarquer une chose :
Code : Sélectionner tout - Visualiser dans une fenêtre à part var monss = 1 + d.getMonth();
Et bien sur, dans new Date(ssaa,mm), si 0<mm<11, ssaa ne changera pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 var d2 = new Date(2010,9); // Octobre 2010 alert(d2.getFullYear() + ('0' + d2.getMonth()).substr(-2)) // Donne '201009' //('0' + ...).substr(-2) var d2 = new Date(2010,10); // Novembre 2010 var d2s = d2.getFullYear() + ('0' + (1 + d2.getMonth())).substr(-2); // Donne '201011', cool !!! //('0' + (1 + ...)).substr(-2) var d1 = new Date(); var d1s = d1.getFullYear() + ('0' + (1 + d1.getMonth())).substr(-2) // Donne '201001'
Donc, dans ton code mm = parseInt(sdate.substr(3,2)) - 1;
Bien sur, on peut très facilement vérifier si d1s == d2s ou si d1s > d2s
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var d2 = new Date(sdate.substr(6,4), parseInt(sdate.substr(3,2)) - 1) //OU, si pas besoin de validation de date var d2s = sdate.substr(6,4) + sdate.substr(3,2);![]()
Partager