JS用了setMonth或setFullYear设置日期对后,getDay获取到的值要就总是1,要么就总是错误的,是什么原因?我的JS代码如下: var nowtime = new Date();
nowtime.setDate(1);
alert(nowtime.getDay());
//nowtime.setMonth(2);
//nowtime.setFullYear(2008);
如果把最后的两行注释掉,那么getDay能正确的获得值,如果后面两行加上的话,那么获得的值就是错的,是什么原因,请高手指教一下。
nowtime.setDate(1);
alert(nowtime.getDay());
//nowtime.setMonth(2);
//nowtime.setFullYear(2008);
如果把最后的两行注释掉,那么getDay能正确的获得值,如果后面两行加上的话,那么获得的值就是错的,是什么原因,请高手指教一下。
解决方案 »
- 图片上传问题。
- |zyciis|如何在form submit 时通过js添加他的post数据如 name=jerry&pass=123456 谢谢
- html页面中用了大量的javascript脚本,造成阅读页面很困难,有什么办法能让javascript脚本隐藏起来?
- 点击按钮出现一个以按钮为焦点的层是怎么做的?
- iframe自适应高度问题
- 好急啊,一个javascript问题,在线等,解决给分
- 关于showModalDialog关闭的问题
- 晕~ 正则 问题~ 在线等待~
- 弹出窗口,其中的textfield不能输入,为什么?救命~!
- 心情好,发分
- this问题
- window.showModelessDialog返回值问题
var nowtime = new Date();
nowtime.setDate(1); // 设为本月 1 日 (2010-01)
alert(nowtime.getDay()); // 5 . 2010-01-01 确实是星期五呀
没有错误,怎么会有错
月份是从0开始算的,估计你没在意这个
但是var nowtime = new Date();
nowtime.setDate(1);
nowtime.setMonth(2);
nowtime.setFullYear(2008);
alert(nowtime.getDay());如果这样的话,结果是6,你觉得不对了是吗?
那么你使用如下代码var nowtime = new Date();
nowtime.setDate(1);
nowtime.setMonth(2);
nowtime.setFullYear(2008);
alert(nowtime.getDay()+'---'+(nowtime.getMonth()+1)+'----'+nowtime.getYear()+'---'+nowtime.getDate());当前是1月,你设置为2月,但是实际结果是nowtime.getMonth()+1,也就是2008年3月1日,是星期六。没有错的。
那么总结一下,你觉得错误的地方其实就是3楼已经解释的问题
nowtime.getMonth(); //月份是从0开始算的
那么你使用nowtime.getMonth()的话就必须是nowtime.getMonth()+1.这下明白了吗?