获得两个不同的日期月份

时间:2018-06-16 05:20:47

标签: javascript html datetime

我是一个新手试图通过Lynda.com上的视频课程学习JavaScript 教师从alert()代码开始,使我们编写的内容显示在警告框中。然后他展示了编写代码,以便在今天的警告框中回来:

var date = new Date();
alert("Today's date is " + date); 
  

我包括这个以显示为当前日期设置了日期变量。

接下来的事情是让我们写的内容出现在打开文档顶部的实际网页部分。

document.body.innerHTML = "<h1>The date today is " + date + "<h1>"

它的回复时间与June 15相同,这次是在网页本身。

下一部分是我有一个不同月份的地方,尽管完全按照我应该做的。为了使其更具可读性,我们了解了获取特定信息的get函数。

document.body.innerHTML = "<h1>The date today is " + date.getMonth() + "/" + date.getDate() + "/" + date.getFullYear() + "</h1>"

然后又回来了:

  

今天的日期是5/15/2018

我无法弄清楚为什么它会在2018年5月15日告诉我,而早些时候这个日期是正确的。我无法弄清楚我的代码在哪里出错了。可以给予任何帮助。

2 个答案:

答案 0 :(得分:1)

这是因为返回的月份是从零开始的,因此6月确实是第5个月。

来自MDN上的date.getMonth()文档:

  

getMonth()方法根据本地时间返回指定日期的月份,作为从零开始的值(其中零表示一年中的第一个月)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getMonth

答案 1 :(得分:0)

javascript getMonth()方法根据当地时间返回指定日期的月份(从0到11)。这意味着,1月是0,2月是1,依此类推。因此,当前月份(6月)在您的输出中返回5。

要在代码中获得所需的输出,请按以下方式进行更正:

&#13;
&#13;
var date = new Date();
document.body.innerHTML = "<h1>The date today is " +  (parseInt(date.getMonth(), 10) + 1) + "/" + date.getDate() + "/" + date.getFullYear() + "</h1>";
&#13;
&#13;
&#13;