简体   繁体   中英

javascript create date from year, month, day

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?

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);

Use the Date() object to create a date from the day, month and year. Following the very impressive answer

Here

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM