I am trying to create a new date
in javascript
.
I have year
, month
and day
. Following this tutorial, syntax for creating new date
should be:
new Date(year, month, day, hours, minutes, seconds, milliseconds)
and that is exactly what I am doing:
var d = new Date(2016, 12, 17, 0, 0, 0, 0);
This should be december 17th 2016, but in my console output I see:
Tue Jan 17 2017 00:00:00 GMT+0100 (Central Europe Standard Time)
What am I doing wrong?
It is used to work with dates and times. The Date object is created by using new keyword, i.e. new Date(). The Date object can be used date and time in terms of millisecond precision within 100 million days before or after 1/1/1970.
const d = new Date("2015/03/25"); The behavior of "DD-MM-YYYY" is also undefined. Some browsers will try to guess the format. Some will return NaN.
"The expression new Date() returns the current time in internal format, as an object containing the number of milliseconds elapsed since the start of 1970 in UTC.
January is month 0. December is month 11. So this should work:
var d = new Date(2016, 11, 17, 0, 0, 0, 0);
Also, you can just simply do:
var d = new Date(2016, 11, 17);
According to MDN - Date:
month
Integer value representing the month, beginning with 0 for January to 11 for December.
You should subtract 1 from your month:
const d = new Date(2016, 11, 17, 0, 0, 0, 0);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With