日期:2014-05-16  浏览次数:20395 次

javascript 设置日期,遇到个诡异问题
今天3-29日,我执行以下语句
var d=new Date();
     d.setYear(2013);
    
     d.setMonth(1);
     d.setDate(26);
     console.log('d:'+d);


得到的结果 竟然是这样的
d:Tue Mar 26 2013 18:37:40 GMT+0800 (中国标准时间) 

按说应该得到 2月26才对啊

------解决方案--------------------
var d=new Date();
d.setYear(2013);
console.log('d:'+d);//输出2013-3-29
d.setMonth(1);//这时应该是2013-2-29,但是2013年2月没有29号,所以自动转换成2013-3-1
console.log('d:'+d);//输出2013-3-1
d.setDate(26);
console.log('d:'+d);//输出2013-3-26

------解决方案--------------------

引用:
var d=new Date();
d.setYear(2013);
console.log('d:'+d);//输出2013-3-29
d.setMonth(1);//这时应该是2013-2-29,但是2013年2月没有29号,所以自动转换成2013-3-1
console.log('d:'+d);//输出2013-3-1
d.setDate(26);
co……

+