[Dates] Comparaison des dates
Bonjour,
Dans un script de validation de saisie, je compare deux dates.
Voci ma fonction :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
//Retourne:
// 0 si date_1=date_2
// 1 si date_1>date_2
// -1 si date_1<date_2
function compare(date_1, date_2) {
diff = date_1.getTime()-date_2.getTime();
return (diff==0?diff:diff/Math.abs(diff));
} |
Celle-ci semble très bien fonctionner sauf dans les cas où le mois de la deuxième date est 12. La fonction me retourne 1 alors qu'elle devrait retourner -1.
Mes dates sont sous forme de chaine de caractère et construite avec la fonction suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
//On suppose que la date entrée a été validée auparavant
//au format dd/mm/yyyy
function getDate(strDate){
day = strDate.substring(0,2);
month = strDate.substring(3,5);
year = strDate.substring(6,10);
d = new Date();
d.setDate(day);
d.setMonth(month);
d.setFullYear(year);
return d;
} |
Je ne vois vraiment pas où est le problème et sollicite votre aide.
Exemple d'appel problématique :
Date 1 : 01/01/2007
date 2 : 01/12/2007
Merci d'avance pour toute réponse
Sempire