1、根据输入的日期,获取年,月,日信息。
2、根据月信息,减去一个月,就是上一个月。注意1月份是上一年的12月份。
3、然后再拼接成日期格式
根据上面步骤,可以写对应的功能函数
/*** 获取上一个月
*
* @date 格式为yyyy-mm-dd的日期,如:2014-01-25
*/
function getPreMonth(date) {
var arr = date.split('-')
var year = arr[0] //获取当前日期的年份
var month = arr[1] //获取当前日期的月份
var day = arr[2] //获取当前日期的日
var days = new Date(year, month, 0)
days = days.getDate() //获取当前日期中月的天数
var year2 = year
var month2 = parseInt(month) - 1
if (month2 == 0) {//如果是1月份,则取上一年的12月份
year2 = parseInt(year2) - 1
month2 = 12
}
var day2 = day
var days2 = new Date(year2, month2, 0)
days2 = days2.getDate()
if (day2 > days2) {//如果原来日期大于上一月的日期,则取当月的最大日期。比如3月的30日,在2月中没有30
day2 = days2
}
if (month2 < 10) {
month2 = '0' + month2//月份填补成2位。
}
var t2 = year2 + '-' + month2 + '-' + day2
return t2
}
调用
alert(getPreMonth("2014-01-25"))
你是指获取当前月的上一个月?
原生Javascript日期操作比较麻烦。
你可以使用momentjs:
获取上一个月的方法:
moment().subtract(1, 'months')参考文档:http://momentjs.com/docs/#/manipulating/
js获取函数的调用者2021-10-29
js中被调用的函数获取调用者对象
js 获取函数的所有参数名
JS获取函数的成员变量
JS - 获取函数的参数名称
js获取当前时间,js时间函数
JS获取服务器时间并且计算距离当前指定时间差的函数
JS 获取(期号、当前日期、本周第一天、最后一天及当前月第一、最后天函数)
【转】javascript浏览器参数的操作,js获取浏览器参数
js获取cookie
如何用 js 获取table 或者其他块状标签的 宽和高
js获取上一个月、下一个月格式为yyyy-mm-dd的日期
JS获取checkbox的个数
JS获取节点的兄弟,父级,子级元素的方法(js获取子级获取到换行与空格元素-FF)
JS匿名函数的理解
JS获取非行间样式
js部分---函数与递归;
JS 获取浏览器和屏幕宽高等信息代码
JS中函数的基础知识
js获取浏览器高度和宽度值,尽量的考虑了多浏览器。
JS获取与遍历节点的兄弟父级
Js 获取 本周、本月起始时间