js计算两个日期间的天数月的实例代码

  

计算结果为几个月零几天
  

        & lt; html>   & lt; head>   & lt; title>计算天数月& lt;/title>   & lt;元charset=癎BK”比;   & lt;脚本type=" text/javascript祝辞   函数dateU (date1 date2) {//date2-date1   var日元=数量(date1.substr(0, 4));//年   var y2=数量(date2.substr (0, 4));   var m1=数量(date1.substr(4,2));//月   var m2=数量(date2.substr (4,2));   var ym1=数量(date1.substr(0, 6));//年月   var ym2=数量(date2.substr (0, 6));   var d1=数量(date1.substr(2));//日   var d2=数量(date2.substr (2));   var=0;   var月=0;   var maxDay=[31日31日31日,28日,30日,30日,31日,31日,30日,31日,30日,31);//当月最大天数   var指数=0;//maxDay的数组编的号   而(ym1=d1){//年月相同且日2祝辞=日1   一天=d2-d1;   其他}{//年月相同且日2 & lt;日1,取上月最大天数计算   月,//最后月,不足一个月   如果(m2==1){//1月   指数=11;//取12个月的   }else if (m2==3){//2月   指数=1;//判断闰年否   如果(y2 % 100==0) {   如果(y2 % 400==0) {   maxDay [1]=29;   }   }else if (y2 % 4==0) {   maxDay [1]=29;   }   其他}{   指数=m2-1;   }   一天=maxDay(指数)d1 + d2;   }   返回月+”月零”+天+“天”;   }      函数showMonthDay () {   var date1=. getelementbyid (“date1”) value;   var date2=. getelementbyid (“date2”) value;   alert (dateU (date1 date2));   }   & lt;/script>   & lt;/head>   & lt; body>   & lt; div对齐="中心"祝辞& lt; br>   开始日期:& lt;输入id=" date1 " value=" https://www.yisu.com/zixun/20180707 "祝辞& lt;/br>   结束日期:& lt;输入id=" date2 " value=" https://www.yisu.com/zixun/20201201 "祝辞& lt;/br>   & lt;输入类型="按钮" value=" https://www.yisu.com/zixun/计算“比;   & lt;/div>   & lt; hr>   & lt; i>   版权(c) 2018 fhy
  保留所有权利。   & lt;/i>   & lt;/body>   & lt;/html>      

下面在通过一段代码看下js计算两个日期差

        函数timeDifc(开始、结束){   让=new日期(开始)开始,结束=新的日期(结束),消息=";   如果(starts.getTime()在ends.getTime ())   返回消息="现在的时间小于以前的时间!”;   如果((ends.getTime ()——starts.getTime ())/(1000 * 60) & lt;1)   返回消息="刚刚”;   如果(ends.getFullYear()在starts.getFullYear (),,ends.getMonth()在=starts.getMonth ())   消息+=ends.getFullYear ()——starts.getFullYear() +“年”;   如果(ends.getMonth()在starts.getMonth (),,ends.getDate()在=starts.getDate ())   消息+=ends.getMonth ()——starts.getMonth() +“个月”;   如果(ends.getDate()在starts.getDate (),,ends.getHours()在=starts.getHours ())   消息+=ends.getDate ()——starts.getDate() +“天”;   如果(ends.getHours()在starts.getHours (),,ends.getMinutes()在=starts.getMinutes ())   消息+=ends.getHours ()——starts.getHours() +“小”时;   如果(ends.getMinutes()在starts.getMinutes ())   消息+=ends.getMinutes ()——starts.getMinutes() +“分钟”;   返回消息;   };//注:上边的变量是用让声明的(es6语法),下边是用巴贝尔编译后的   函数timeDifc(开始、结束){   var=new开始日期(开始),   结束=新的日期(结束),   消息=";   如果(starts.getTime()在ends.getTime())返回消息="现在的时间小于以前的时间!”;   如果((ends.getTime ()——starts.getTime ())/(1000 * 60) & lt;1)返回消息="刚刚”;   如果(ends.getFullYear()在starts.getFullYear (),,ends.getMonth()在=starts.getMonth())消息+=ends.getFullYear ()——starts.getFullYear() +“年”;   如果(ends.getMonth()在starts.getMonth (),,ends.getDate()在=starts.getDate())消息+=ends.getMonth ()——starts.getMonth() +“个月”;   如果(ends.getDate()在starts.getDate (),,ends.getHours()在=starts.getHours())消息+=ends.getDate ()——starts.getDate() +“天”;   如果(ends.getHours()在starts.getHours (),,ends.getMinutes()在=starts.getMinutes())消息+=ends.getHours ()——starts.getHours() +“小”时;   如果(ends.getMinutes()在消息+=ends.getMinutes starts.getMinutes ()) ()——starts.getMinutes() +“分钟”;   返回消息;   };      

在浏览器的主机中测试结果如下:

  

 js计算两个日期间的天数月的实例代码

js计算两个日期间的天数月的实例代码