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 相关文章推荐
jscript之Open an Excel Spreadsheet
Jun 13 Javascript
javascript 事件处理程序介绍
Jun 27 Javascript
浅谈JS日期(Date)处理函数
Dec 07 Javascript
PageSwitch插件实现100种不同图片切换效果
Jul 28 Javascript
详解javascript new的运行机制
Jan 26 Javascript
js遍历map javaScript遍历map的简单实现
Aug 26 Javascript
Bootstrap实现的标签页内容切换显示效果示例
May 25 Javascript
Angular4学习笔记之准备和环境搭建项目
Aug 01 Javascript
微信小程序中进行地图导航功能的实现方法
Jun 29 Javascript
JSONP 的原理、理解 与 实例分析
May 16 Javascript
vue页面跳转实现页面缓存操作
Jul 22 Javascript
在vue中使用image-webpack-loader实例
Nov 12 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环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
2006/11/17 PHP
jquery的index方法实现tab效果
2011/02/16 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
js利用事件的阻止冒泡实现点击空白模态框的隐藏
2014/01/24 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
jQuery的context属性用法实例
2014/12/27 Javascript
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
基于jQuery实现选取月份插件附源码下载
2015/12/28 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
微信小程序实现给循环列表添加点击样式实例
2017/04/26 Javascript
详解Vuejs2.0 如何利用proxyTable实现跨域请求
2017/08/03 Javascript
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
javascript实现fetch请求返回的统一拦截
2019/12/22 Javascript
JavaScript多种图形实现代码实例
2020/06/28 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
Python类定义和类继承详解
2015/05/08 Python
在Python的struct模块中进行数据格式转换的方法
2015/06/17 Python
利用python画一颗心的方法示例
2017/01/31 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
使用python画个小猪佩奇的示例代码
2018/06/06 Python
Python实现基于KNN算法的笔迹识别功能详解
2018/07/09 Python
python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析
2019/09/05 Python
英国家喻户晓的家居商店:The Range
2019/03/25 全球购物
西班牙最大的婴儿用品网上商店:Bebitus
2019/05/30 全球购物
德国婴儿服装和婴儿用品购买网站:Baby Sweets
2019/12/08 全球购物
为什么使用接口?
2014/08/13 面试题
浙大网新C/C++面试解惑
2015/05/27 面试题
教育局长自荐信范文
2013/12/22 职场文书
高中家长寄语
2014/04/02 职场文书
大学开学计划书
2014/04/30 职场文书
幼儿园安全工作总结2015
2015/04/20 职场文书
python实战之用emoji表情生成文字
2021/05/08 Python
解决pytorch-gpu 安装失败的记录
2021/05/24 Python
用Python selenium实现淘宝抢单机器人
2021/06/18 Python
Js类的构建与继承案例详解
2021/09/15 Javascript