1. 判断是否是闰年
function isLeapYear(eDate) { ???var year = eDate.getFullYear(); ???return (((0 == year % 4) && (0 != (year % 100))) || (0 == year % 400));}
2. 获取月份的总天数
function getDaysInMonth(eDate) { ???var daysInMonth = [31,28,31,30,31,30,31,31,30,31,30,31]; ???daysInMonth[1] = isLeapYear(eDate) ? 29 : 28; ???return daysInMonth[eDate.getMonth()];}
3. 给日期加上几个月(如果得到的日期没有这一天,则自动变为当月的最后一天)
function addMonth(eDate, duration) { ???var month = eDate.getMonth() + parseInt(duration); ???var day = eDate.getDate(); ?????eDate.setDate(1); ?????eDate.setMonth(month); ???var daysInMonth = getDaysInMonth(eDate); ???if(day > daysInMonth){ ???????day = daysInMonth; ???} ???eDate.setDate(day); ???return eDate;}
4. 修改日期
function changeExpiryDate(expDate, duration, durationType){ ???if(durationType == 2){//Day ???????expDate.setDate(expDate.getDate()+parseInt(duration)); ???}else if(durationType == 3){//Week ???????expDate.setDate(expDate.getDate()+parseInt(duration*7)); ???}else if(durationType == 4){//Month ???????expDate = addMonth(expDate.getTime(), duration); ???}}
js日期处理函数 ?-- 判断闰年,获取当月的总天数、添加月份
原文地址:https://www.cnblogs.com/BlueStarWei/p/9246335.html