Comment savoir la date est-il aujourd'hui?

J'essaie mais ça ne fonctionne pas … pourquoi?

<html> <body> <script type="text/javascript"> var today=new Date(); //today is Nov 28, 2010 today.setHours(0); today.setMinutes(0); today.setSeconds(0); document.write(today+" "); var today2 = new Date("November 28, 2010"); document.write(today2 + " "); if (today == today2) { document.write("=="); if (!(today > today2) && !(today < today2) ) {document.write("== ");} if (today > today2) { document.write("> ");} if (today >= today2 ){ document.write(">= ");} if (today < today2 ) { document.write("< ");} if (today <= today2 ){ document.write("<= ");} </script> </body> </html> 

Et j'obtiens toujours ceci:

 Sun Nov 28 2010 00:00:00 GMT+0900 (JST) Sun Nov 28 2010 00:00:00 GMT+0900 (JST) > >= 

Les deux dates ne sont-elles pas les mêmes? Par conséquent, je devrais obtenir == imprimé, mais ça == pas …; (

Merci d'avance pour votre aide.

Ils ne correspondent jamais parce que vous comparez deux instances distinctes d'objets Date .

Vous devez obtenir une valeur commune qui peut être comparée. Par exemple .toDateString() .

 today.toDateString() == today2.toDateString(); // true 

Si vous comparez juste deux objets Date distincts, même s'ils ont exactement la même valeur de date, ils sont encore différents.

Par exemple:

 today == new Date( today ); // false 

Ils sont la même valeur de date / heure, mais ne sont pas le même objet, donc le résultat est false .

 function today(td){ var d = new Date(); return td.getDate() == d.getDate() && td.getMonth() == d.getMonth() && td.getFullYear() == d.getFullYear(); }