意外的JavaScript日期行为

我有以下代码:


var newDate=new Date('05/22/2012');

var month=newDate.getMonth();

var day=newDate.getDate()+(-2);

var year=newDate.getYear();

document.write(month+'/'+day+'/'+year);

我希望它返回“ 05/20/2012”,但它返回“ 04/20/2012”


这对我来说毫无意义-有人可以帮助我了解发生了什么以及如何获得正确的响应吗?


感谢您的关注!


忽然笑
浏览 340回答 3
3回答

翻翻过去那场雪

.getMonth()从零开始。如0=January和11=December尝试var month=newDate.getMonth() + 1;

HUH函数

.getMonth()从零开始。一月对应于0,二月对应于1,依此类推。截至提出该问题时,月份为5月,因此.getMonth()返回4。你要.getMonth() + 1。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript