由于产品要求比较特殊,就自己做了一个日历。在2014.10.31日发现,计算下一个月的今天时候出问题了。有问题的代码如下:
var today = new Date(); today.setMonth(today.getMonth() + 1); var nextMonthToday = today;
nextMonthToday 为 Mon Dec 01 2014 22:33:03 GMT+0800 (中国标准时间)
究其原因发现在执行today.setMonth里面的 + 1,实际是按照当月的天数计算的。
即在today的unix时间戳上加了31天,所以就到了12月1号。
解决办法:
var date = today.getDate(); //记住当前日期 today.setDate(1); //设置为本月1号 today.setMonth(today.getMonth() + n); //n个月以后1号 today.setDate(Math.min(date, getDaysInMonth(today))); // getDaysInMonth(today)表示计算下n个月当月的天数,如10月31号的下一个对应日期为11月30号
相关推荐
Jmat.js 是一个 JavaScript 的数学计算库。支持复杂的数学函数和统计。 标签:Jmatjs
JavaScript天数计算,JavaScript天数计算,
用Javascript实现简单的计算功能
刚好做的项目同到了javascript时间的计算,就用javascript写了个时间计算,现在拿出来给大家分享
使用JavaScript 完成表单的自动计算
Algebrite, 在 Javascript ( Coffeescript ) 中,计算机代数系统 Algebrite是一个用于符号数学( 从技术上讲,CoffeeScript )的Javascript库,旨在理解和易于扩展。var Algebrite = require('algebrite')Algebri
T:1000(单位秒),时刻,通过传入一个周期的时刻,计算出一个周期卫星的位置,即可绘制出卫星一个周期的轨道. 返回值例子: { positionEci: { x:-878947.498961129, y:3896645.35615091, z:2287615.66377817 },//...
javascript 精确计算、日期处理、金额格式化
JavaScript小数点精确计算,解决js小数点计算的问题,js计算,js小数计算,js浮点数计算
money.js 是一个货币转换的微型 javascript 库,可在 nodeJS 和浏览器中使用
blockhash-js, 在javascript中,图像感知哈希计算 blockhash-js,block Fan Fan Fan Fan Fan Image图像感知哈希算法,mean 。安装这个模块是通过npm安装的: $ npm install blockhash在浏览器中使
TheoremJS - 用于在JavaScript中进行计算的数学库
使用JavaScript可以很方便地实现方差的计算,下面是一个示例代码: 这个函数接受一个包含数据值的数组作为参数,并返回数据集合的方差。函数先计算出数据集合的平均值,然后对每个数据值与平均值的差的平方求和,再...
javascript获取客户端网卡MAC地址和IP地址和计算机名
JavaScript 实现计算乘除法
javascript避免数字计算精度误差的方法详解.docx
网络资源的整合,以及自己摸索使用JavaScript进行byte计算的路,包括详细的文档,范例代码(java和js按算法crc16生成crc码),为下载其中资源,花费若干分,所以设定了下载分。谢谢大家!
使用JavaScript可以很方便地实现标准差的计算,下面是一个示例代码: 这个函数接受一个包含数据值的数组作为参数,并返回数据集合的标准差。函数先计算出数据集合的平均值,然后对每个数据值与平均值的差的平方求和...
用JAVA写一个计算机,实现一些最基本的计算
JavaScript 获取客户端计算机硬件及系统信息,可获取 1、客户端MAC地址 2、客户端CPU信息 3、客户端其他硬件信息