views:

35

answers:

3

I have the following javascript code:

<script type="text/javascript">
    $(function () {
        var currentDateTime = new Date();
        var oneYear = new Date();
        oneYear.setYear(oneYear.getYear() + 1);
        alert(currentDateTime + "_" + oneYear);
    });
</script>

i would expect the alert to output the current datetime and the datetime of one year from now. However I get this in the alert: "Fri Oct 22 2010 14:17:31 GMT-0400 (Eastern Daylight Time)_Thu Oct 22 0111 14:17:31 GMT-0400 (Eastern Daylight Time)"

Clearly it's not adding "1" to the Year correctly!

Whats going on? How did it become the year 0111???

+11  A: 
KennyTM
agh you beat me to it
vol7ron
+2  A: 

Y2K was 10 years ago, but you're still using getYear instead of getFullYear? tsk tsk...

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/getFullYear

Mike Ruhlin
+1  A: 

Instead of .getYear() try .getFullYear()

vol7ron