Getting current date and time in JavaScript

I have a script that prints the current date and time in JavaScript, but the DATE is always wrong. Here is the code: It should print 18/04/2012 15:07:33 and prints 3/3/2012 15:07:33 Answer .getMonth() returns a zero-based number so to get the correct month you need to add 1, so calling .getMonth() in may will return 4 and not 5. So in your code we can use currentdate.getMonth()+1 to output the correct value. In addition: .getDate() returns the day of the month <- this is the one you want .getDay() is a separate method of the Date object which will

Why does Javascript only type-cast for string concatenation on strings that are already assigned?

I noticed something strange when messing around with strings and numbers in a Javascript console. Doing this: “$99.9” += 0 causes SyntaxError: Invalid left-hand side in assignment. But if I assign the string to a variable, the behavior is different (and more in line with what we’ve come to expect/accept from Javascript) let str = “$99.9” str += 0 // => “$99.90” I’m familiar with what causes the behavior in the second example (and what causes so many other Javascripty things to happen), but the error in the first example surprised me. What is happening in the first example of