JavaScript new date()函数返回错误的日期

时间:2018-12-07 09:08:34

标签: javascript

我需要像这样的日期new Date(2018, 12, 24, 10, 33)转换日期,但无论如何,它都会像这样的日期Thu Jan 24 2019 10:33:00 GMT+0530 (India Standard Time)返回。对于其他月份,它的工作正常。甚至我都签了w3school

还有返回错误的日期,请给我任何解决方法

2 个答案:

答案 0 :(得分:1)

因为在JavaScript Date中,对象月份从0(一月)到11(十二月)进行编号。 new Date()代码中的12不是有效月份,因此javascript将其转换为0,并返回一月份的日期。

答案 1 :(得分:1)

javascript功能没有问题。

在Javascript月份中,数字从0到11开始,如果您通过0则返回1月,而11则返回12月。

以某种方式,JavaScript在插入12个月的数字期间返回一月而不是错误,但是您在0到11个月内获得了结果。

以下是代码供您参考。

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p>5 numbers specify year, month, day, hour, and minute:</p>

<p id="demo"></p>
<p id="demo1"></p>
<script>
var d = new Date(2018, 0, 24, 10, 33);
document.getElementById("demo").innerHTML = d;

var d1 = new  Date(2018, 11, 24, 10, 33)
document.getElementById("demo1").innerHTML = d1;

</script>
</body>
</html>