Cela pourrait être un peu plus propre version, notez également que vous devriez toujours utiliser un radix lors de l'utilisation de parseInt.
window.addEvent('domready', function() {
// Create a Date object set to midnight on today's date
var today = new Date((new Date()).setHours(0, 0, 0, 0)),
input = $('datum').getValue(),
dateArray = input.split('/'),
// Always specify a radix with parseInt(), setting the radix to 10 ensures that
// the number is interpreted as a decimal. It is particularly important with
// dates, if the user had entered '09' for the month and you don't use a
// radix '09' is interpreted as an octal number and parseInt would return 0, not 9!
userMonth = parseInt(dateArray[1], 10) - 1,
// Create a Date object set to midnight on the day the user specified
userDate = new Date(dateArray[2], userMonth, dateArray[0], 0, 0, 0, 0);
// Convert date objects to milliseconds and compare
if(userDate.getTime() > today.getTime())
{
alert(today+'\n'+userDate);
}
});
La caisse de la MDC parseInt page pour plus d'informations sur le radix.
JSLint est un excellent outil pour attraper les choses comme un manque radix et beaucoup d'autres choses qui peuvent causer d'obscurs et difficiles à déboguer les erreurs. Il vous oblige à utiliser au mieux les normes de codage afin de vous éviter des soucis à l'avenir. Je l'utilise sur chaque projet JavaScript je code.