Javascript格式返回0的日期
Javascript新手在此:Javascript格式返回0的日期,javascript,date,format,Javascript,Date,Format,Javascript新手在此: function calcExpiration(){ var getState = jQuery( "#state" ).text(); var getcalldate = jQuery( "#date" ).text(); var date = new Date( getcalldate ); if (getState == "KY" || getState == "IN"){ date.setDate(date
function calcExpiration(){
var getState = jQuery( "#state" ).text();
var getcalldate = jQuery( "#date" ).text();
var date = new Date( getcalldate );
if (getState == "KY" || getState == "IN"){
date.setDate(date.getDate() + 30);
}
if (getState == "WV" || getState == "OH"){
date.setDate(date.getDate() + 10);
}
var expmonth = date.getMonth()+1;
var expdate = date.getDay();
var expyear = date.getFullYear();
jQuery( "#expiration" ).html( expmonth + "/" + expdate + "/" + expyear);
}
calcExpiration();
当getcalldate=2015年2月1日
返回2015年2月0日
我遗漏了什么?如果我正确理解了你的问题,你应该调用
getDate()
返回当月的日期,而不是getDay()
,后者将返回0
,因为你的日期(2015年2月1日)是Sunday
,函数返回Sunday=0,星期一=1等。您不应该使用日期构造函数来解析字符串,例如在var Date=new Date(getcalldate)
中。它在不同浏览器之间不一致且不可靠。最好告诉用户您需要的格式并自己解析(请参阅)。您已经掌握了。我使用了错误的日期函数。