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 相关文章推荐
JQuery 入门实例1
Jun 25 Javascript
js下利用控制器载入对应脚本
Jul 17 Javascript
javascript 基础篇2 数据类型,语句,函数
Mar 14 Javascript
十个迅速提升JQuery性能让你的JQuery跑得更快
Dec 10 Javascript
js操纵dom生成下拉列表框的方法
Feb 24 Javascript
js中实现多态采用和继承类似的方法
Aug 22 Javascript
jQuery实现鼠标划过展示大图的方法
Mar 09 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
Apr 22 Javascript
Vue插件写、用详解(附demo)
Mar 20 Javascript
Vue 组件修改根实例的数据的方法
Apr 02 Javascript
vue图片上传组件使用详解
Dec 23 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 04 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 日,周,月点击排行统计
2012/01/11 PHP
PHP生成随机用户名和密码的实现代码
2013/02/27 PHP
解决PHP超大文件下载,断点续传下载的方法详解
2013/06/06 PHP
简单的php新闻发布系统教程
2014/05/09 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
IE8 原生JSON支持
2009/04/13 Javascript
使用js 设置url参数
2013/07/08 Javascript
Jquery+asp.net后台数据传到前台js进行解析的方法
2014/05/11 Javascript
jQuery绑定事件不执行但alert后可以正常执行
2014/06/03 Javascript
javascript函数的四种调用模式
2017/01/08 Javascript
JavaScript自动点击链接 防止绕过浏览器访问的方法
2017/01/19 Javascript
canvas绘制七巧板
2017/02/03 Javascript
Vue2.x中的Render函数详解
2017/05/30 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
微信小程序实现弹出菜单动画
2019/06/21 Javascript
jquery 时间戳转日期过程详解
2019/10/12 jQuery
Vuex实现数据共享的方法
2019/12/20 Javascript
使用rpclib进行Python网络编程时的注释问题
2015/05/06 Python
深入解析Python中的lambda表达式的用法
2015/08/28 Python
Python中str.join()简单用法示例
2018/03/20 Python
Python smtplib实现发送邮件功能
2018/05/22 Python
python3实现猜数字游戏
2020/12/07 Python
使用apiDoc实现python接口文档编写
2019/11/19 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
Python气泡提示与标签的实现
2020/04/01 Python
python能自学吗
2020/06/18 Python
html5 Canvas画图教程(3)—canvas出现1像素线条模糊不清的原因
2013/01/09 HTML / CSS
Crocs美国官方网站:卡骆驰洞洞鞋
2017/08/04 全球购物
菲律宾最大的网上花店和礼品店:PhilFlower.com
2018/02/09 全球购物
AOP的定义以及作用
2013/09/08 面试题
Linux文件系统类型
2012/09/16 面试题
新闻学专业大学生职业生涯规划范文
2014/03/02 职场文书
党组织领导班子整改方案
2014/10/25 职场文书
spring 项目实现限流方法示例
2022/07/15 Java/Android
JS前端可扩展的低代码UI框架Sunmao使用详解
2022/07/23 Javascript