js 计算开始日期和结束日期跨度几个月份的方法

特殊:(1)若开始日期的年月相同,但是天数不同的话是要算一个月.如:2019-12-2到2019-12-24那么跨度就是一个月。

   (2)若开始日期是2019-11-30到2020-12-02,那么跨度就是13个月。

     (3)若开始时间是2019-12-24到2019-12-03,那么跨度就是2个月。

        <script type="text/javascript">
            $(function() {
                var startTime = "2019-01-29";
                var endTime = "2019-02-02";
                var month = monDiff(startTime, endTime);
                $("#month").text(month);
            });
        
            function monDiff(startTime, endTime) {
                startTime = new Date(startTime);
                endTime = new Date(endTime);
                if((endTime.getYear() == startTime.getYear()) && (endTime.getMonth() == startTime.getMonth())&& endTime>startTime) {
                    return 1;
                } else if(endTime>startTime && (endTime.getYear() == startTime.getYear())) {
                    return(endTime.getYear() - startTime.getYear()) * 12 + endTime.getMonth() - startTime.getMonth()+1;
                }else if(endTime>startTime && (endTime.getYear() > startTime.getYear())){
                    return(endTime.getYear() - startTime.getYear()) * 12 + endTime.getMonth() - startTime.getMonth();
                }else{
                    return "开始日期大于结束日期";
                }            
            }
        </script>

 

 

  

posted @ 2019-12-24 15:18  蓬鹏  阅读(3989)  评论(0编辑  收藏  举报