计算两个时间差的问题

function getDateIsMatching(){
var pactbegindate=$("#loanbegindate").datetimebox("getValue");
var pactenddate=$("#loanenddate").datetimebox("getValue"); var loanterm=$("#loanterm").val();
var loantermtype=$("#loantermtype").val(); var loantermtypestr;
//将日期字符串分隔为数组,数组元素分别为年.月.日
var date1Str = pactbegindate.split("-");
//根据年 . 月 . 日的值创建Date对象
var date1Obj = new Date(date1Str[0],(date1Str[1]-1),date1Str[2]); //将日期字符串分隔为数组,数组元素分别为年.月.日
var date2Str = pactenddate.split("-");
//根据年 . 月 . 日的值创建Date对象
var date2Obj = new Date(date2Str[0],(date2Str[1]-1),date2Str[2]); var year1 = date1Obj.getFullYear();
var year2 = date2Obj.getFullYear(); //相差的年数
var differYears =year2-year1; var month1 = date1Obj.getMonth();
var month2 = date2Obj.getMonth(); //相差的月数
var differMonths=differYears*12+(month2-month1); var day1=parseInt(date1Str[2]);
var day2=parseInt(date2Str[2]); //相差的天数
var differDays=day2-day1; if(null!=loantermtype&&loantermtype==1){
loantermtypestr="年";
if (loanterm!=differYears) {
alert("起止日期相差的年数"+differYears+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!");
return false;
} if (month2!=month1) {
alert("请检查起止日期的月份是否相等!");
return false;
} //大于等于就正确
if (differDays<0) {
alert("请检查起止日期的'天数'是否正确!");
return false;
} return true;
}else if(null!=loantermtype&&loantermtype==2){
loantermtypestr="个月";
if (loanterm!=differMonths) {
alert("起止日期相差的月数"+differMonths+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!");
return false;
} //大于等于就正确
if (differDays<0) {
alert("请检查起止日期的'天数'是否正确!");
return false;
} return true;
}else{
var t1 = date1Obj.getTime();
var t2 = date2Obj.getTime();
var dateTime = 1000*60*60*24; //每一天的毫秒数
var minusDays = Math.floor(((t2-t1)/dateTime));//计算出两个日期的天数差
var days = Math.abs(minusDays);//取绝对值 loantermtypestr="天";
if (loanterm!=days) {
alert("起止日期相差的天数"+days+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!");
return false;
}
return true;
}
}

JS计算两个时间差的问题的更多相关文章

  1. js计算两个时间差 天 时 分 秒 毫秒

    // 计算两个时间差 dateBegin 开始时间 function timeFn(dateBegin) { //如果时间格式是正确的,那下面这一步转化时间格式就可以不用了 var dateEnd = ...

  2. js 计算两个时间差

    /* * 计算两个日期的间隔天数* BeginDate:起始日期的文本框,格式為:2012-01-01* EndDate:結束日期的文本框,格式為:2012-01-02* 返回兩個日期所差的天數* 調 ...

  3. js计算两个时间差

    时间格式 time:'2018-04-26 15:49:00'需要转换为time:'2018/04/26 15:49:00' 使用time.replace(/\-/g, "/") ...

  4. js计算两个日期的天数差值

    js计算两个日期的天数差值 通过两个日期计算这两个日期之间的天数差值 /** * 计算天数差的函数,通用 * @param sDate1 * @param sDate2 * @returns {Num ...

  5. JS计算两个日期之间的天数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 问题:C#时间差;结果:C# 使用TimeSpan计算两个时间差

    C# 使用TimeSpan计算两个时间差 可以加两个日期之间任何一个时间单位. private string DateDiff(DateTime DateTime1, DateTime DateTim ...

  7. PHP计算两个时间差的方法

    <?php //PHP计算两个时间差的方法 $startdate="2010-12-11 11:40:00"; $enddate="2012-12-12 11:45 ...

  8. bat计算两个时间差

    这个是脚本代码[保存为etime.bat放在当前路径下即可: 免费内容: :etime <begin_time> <end_time> <return>rem 所测 ...

  9. delphi计算两个时间差

    uses DateUtils; var S1, S2: string; T1, T2: TDateTime; D, H, M, S: Integer; Value: Int64; begin S1 : ...

随机推荐

  1. HTML5的 input:file上传类型控制(转载)

    http://www.haorooms.com/post/input_file_leixing HTML5的 input:file上传类型控制 2014年8月29日 66352次浏览 一.input: ...

  2. 《Effective STL》学习笔记

    http://www.cnblogs.com/arthurliu/archive/2011/08/07/2108386.html 作者:咆哮的马甲 出处:http://www.cnblogs.com/ ...

  3. C++ Profiler工具之初体验

    http://www.cnblogs.com/likwo/archive/2012/12/20/2826988.html 转 http://www.cnblogs.com/lenolix/archiv ...

  4. 部分经典IT书籍

    部分经典IT书籍 [系统,网路管理]1) Learning the Unix Operating System 1565923901 O'reilly/1997-4ed ***强力推荐给想入门unix ...

  5. 关于label标签的作用

    label标签的定义和用法: <label> 标签为 input 元素定义标注(标记). label 元素不会向用户呈现任何特殊效果.不过,它为鼠标用户改进了可用性.如果您在 label ...

  6. webstorm vue cli 热更新不起作用解决办法

    在网上搜到的:原因是(webstorm默认保存在临时文件)  连接  1.打开设置 2.把 System Settings => Synchornization => 最后一项勾去掉

  7. PHP 5.4语法改进与弃用特性

    PHP 5.4于本月尘埃落定,它是 PHP 自 2009 年以来的首次重大更新.该版本对语言部分进行了增强,包括支持 Traits 和移除部分争议特性. Traits 同 Java 和 .NET 一样 ...

  8. (一)STM32固件库详解(转载)

    本篇博文是转载自emouse,因为不能直接转载,所以是复制过来再发布的. emouse原创文章,转载请注明出处http://www.cnblogs.com/emouse/   1.1 基于标准外设库的 ...

  9. 如何使用Eclipse调试framework

    1.下载Eclipse EE(下载地址:http://www.eclipse.org/downloads/) 2.下载并安装JDK(下载地址:http://www.oracle.com/technet ...

  10. 原生toolbar基本使用教程

    1.先写布局文件 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" app:title=" ...