JS getMonth()日期函数的值域是0-11


Posted in Javascript onFebruary 15, 2010

我选择月份列表项后,获得年份值和月份值,计算获得当月1号日期值和当月最后一天的日期值。

正确代码如下:

<script language="javascript"> 
function selDate(y, m) 
{ 
//输出当月1号字符串 
document.form1.startDT.value=y+"-"+m+"-1"; 
//计算下个月的年份(y)、月份值(m) 
if(m==12) 
{ 
y++; 
m=1; 
} 
else 
{ 
m++; 
} 
//生成下个月1日的Date值 
var dt=new Date(y, m-1, 1); //月份值0--11 
//一天差值=86400000,将下月1日转换成数值,再相减,得上月最后一天Date值 
var n=Date.parse(dt); 
n -= 86400000; 
var dt1=new Date(n); 
//输出当月最后一天日期字符串 
document.form1.stopDT.value=dt1.getYear()+"-"+(dt1.getMonth()+1)+"-"+dt1.getDate(); 
} 
</script>

开始我将“var dt=new Date(y, m-1, 1);”写成了“var dt=new Date(y, m, 1);”。而最后一句“dt1.getMonth()”没有加1。结果可想而知,明明是“2010-2-28”,输出的却是“2010-1-28”,而“2010-1-31”输出却是“2010-0-31”。

刚开始感觉莫名其妙,多试了,就找到了错误规律,发现月份值域是“0-11”而不是“1-12”。

希望下次过段时间没用JS后,本文能提醒我。

Javascript 相关文章推荐
JavaScript 模拟用户单击事件
Dec 31 Javascript
jQuery获得内容和属性方法及示例
Dec 02 Javascript
js日期、星座的级联显示代码
Jan 23 Javascript
node.js正则表达式获取网页中所有链接的代码实例
Jun 03 Javascript
jQuery+CSS3实现仿花瓣网固定顶部位置带悬浮效果的导航菜单
Sep 21 Javascript
JS控制FileUpload的上传文件类型实例代码
Oct 07 Javascript
JS中判断null的方法分析
Nov 21 Javascript
AngularJS中controller控制器继承的使用方法
Nov 03 Javascript
webpack4.x下babel的安装、配置及使用详解
Mar 07 Javascript
用node撸一个监测复联4开售短信提醒的实现代码
Apr 10 Javascript
浅谈vue异步数据影响页面渲染
Oct 29 Javascript
详解如何在Javascript中使用Object.freeze()
Oct 18 Javascript
不同浏览器对回车提交表单的处理办法
Feb 13 #Javascript
Jquery iframe内部出滚动条
Feb 11 #Javascript
jquery 问答知识整理
Feb 11 #Javascript
改善你的jQuery的25个步骤 千倍级效率提升
Feb 11 #Javascript
jQuery 改变CSS样式基础代码
Feb 11 #Javascript
jQuery 添加/移除CSS类实现代码
Feb 11 #Javascript
JavaScript Event学习补遗 addEventSimple
Feb 11 #Javascript
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
由php的call_user_func传reference引发的思考
2010/07/23 PHP
PHP写日志的实现方法
2014/11/05 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
详解php命令注入攻击
2019/04/06 PHP
Laravel框架实现即点即改功能的方法分析
2019/10/31 PHP
Laravel登录失败次数限制的实现方法
2020/08/26 PHP
JavaScript类和继承 prototype属性
2010/09/03 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
2011/11/10 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
js实现ArrayList功能附实例代码
2014/10/29 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
浅析JavaScript中的事件机制
2015/06/04 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
jquery mobile开发常见问题分析
2016/01/21 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
vue2中使用less简易教程
2018/03/27 Javascript
详解JavaScript中的函数、对象
2019/04/01 Javascript
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
python遍历 truple list dictionary的几种方法总结
2016/09/11 Python
Python内置函数delattr的具体用法
2017/11/23 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
如何使用VSCode愉快的写Python于调试配置步骤
2018/04/06 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
Tensorflow加载预训练模型和保存模型的实例
2018/07/27 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
Python实现基于SVM的分类器的方法
2019/07/19 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
HTML5实现无刷新修改URL的方法
2019/11/14 HTML / CSS
台湾百利市购物中心:e-Payless
2017/08/16 全球购物
J2EE系统只能是基于web
2015/09/08 面试题
领导班子整改方案
2014/10/25 职场文书
预备党员2014年第四季度思想汇报范文
2014/10/25 职场文书
小学校长开学致辞
2015/07/29 职场文书