获取某个日期的上个月与下个月

获取某个日期的上个月(日期格式为 xxxx-xx-xx)

<script type="text/javascript">

    alert(getPreMonth('2018-02-27')); // 测试

    function getPreMonth(date) {  
        var arr = date.split('-');  //用-将获取到的日期分割
        var year = arr[0];   //获取当前日期的年份  
        var month = arr[1];  //获取当前日期的月份  
        var day = arr[2];    //获取当前日期的日  
        var month2 = parseInt(month) - 1;  //获取上个月的月份
        if (month2 == 0) {  
            year = parseInt(year) - 1;  //获取上个月的年份
            month2 = 12;  
        }  
        var days2 = new Date(year, month2, 0);  //获取当前日期中月的天数
        days2 = days2.getDate();  //天数
        if (day > days2) {  
            day = days2;  
        }  
        if (month2 < 10) {  //如果月份少于10  则月份格式为 01 02 .. 09 10 11 12
            month2 = '0' + month2;  
        }  
        var NewsDate = year + '-' + month2 + '-' + day;  //将新的年月日用-拼接起来
        return NewsDate;  
    }
</script> 

获取某个日期的下个月(日期格式为 xxxx-xx-xx)

<script type="text/javascript">

    alert(getNextMonth('2018-02-27')); // 测试

    function getNextMonth(date) {  
        var arr = date.split('-');  //用-将获取到的日期分割
        var year = arr[0]; //获取当前日期的年份  
        var month = arr[1]; //获取当前日期的月份  
        var day = arr[2]; //获取当前日期的日   
        var month2 = parseInt(month) + 1;  //获取下个月的月份
        if (month2 == 13) {  
            year = parseInt(year) + 1;  //获取下个月的年份
            month2 = 1;  
        }  
        var days2 = new Date(year, month2, 0);  //获取当前日期中月的天数
        days2 = days2.getDate();  //天数
        if (day > days2) {  
            day = days2;  
        }  
        if (month2 < 10) {  //如果月份小于10  则月份格式为 01 02 .. 09 10 11 12
            month2 = '0' + month2;  
        }  
        var NewsDate = year + '-' + month2 + '-' + day;  //将新的年月日用-拼接起来
        return NewsDate;  
    }  
</script> 

以上代码均已测试完毕,请放心使用

发布了5 篇原创文章 · 获赞 39 · 访问量 16万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览