admin管理员组文章数量:1130349
I am trying to create a new Date instance in Javascript.
I have integer values representing year, month and day. Following this tutorial, syntax for creating a 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?
I am trying to create a new Date instance in Javascript.
I have integer values representing year, month and day. Following this tutorial, syntax for creating a 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?
Share Improve this question edited May 29, 2024 at 17:59 Jon Schneider 27k24 gold badges151 silver badges180 bronze badges asked Dec 5, 2016 at 19:37 FrenkyBFrenkyB 7,16716 gold badges73 silver badges124 bronze badges 2 |2 Answers
Reset to default 118January 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);
I am trying to create a new Date instance in Javascript.
I have integer values representing year, month and day. Following this tutorial, syntax for creating a 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?
I am trying to create a new Date instance in Javascript.
I have integer values representing year, month and day. Following this tutorial, syntax for creating a 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?
Share Improve this question edited May 29, 2024 at 17:59 Jon Schneider 27k24 gold badges151 silver badges180 bronze badges asked Dec 5, 2016 at 19:37 FrenkyBFrenkyB 7,16716 gold badges73 silver badges124 bronze badges 2- 8 Months start from 0. You should use this: var d = new Date(2016, 11, 17); – Antonio Commented Dec 5, 2016 at 19:40
-
2
In Javascript Date Object, months are 0 based. So 0 means January, 11 means December. try
var d = new Date(2016, 11, 17, 0, 0, 0, 0);It should be fine. – Hiren Commented Dec 5, 2016 at 19:42
2 Answers
Reset to default 118January 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);
本文标签: Javascript create Date from yearmonthday integer valuesStack Overflow
版权声明:本文标题:Javascript create Date from year, month, day integer values - Stack Overflow 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/questions/1736974201a1440774.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


var d = new Date(2016, 11, 17, 0, 0, 0, 0);It should be fine. – Hiren Commented Dec 5, 2016 at 19:42