如果今天是2012-07-02 那么结果出来的是 2012-07-00 这是不科学的,正确的方法应该是利用将某天的日期转换成毫秒数,然后减去或者加上N天的1000*60*60*24毫秒数,再将这个值通过setTime换成日期即可。
function getDay(day){
var today = new Date();
var targetday_milliseconds=today.getTime() + 1000*60*60*24*day;
today.setTime(targetday_milliseconds); //注意,这行是关键代码
var tYear = today.getFullYear();
var tMonth = today.getMonth();
var tDate = today.getDate();
tMonth = doHandleMonth(tMonth + 1);
tDate = doHandleMonth(tDate);
return tYear+"-"+tMonth+"-"+tDate;
}
function doHandleMonth(month){
var m = month;
if(month.toString().length == 1){
m = "0" + month;
}
return m;
}