js计算两个时间之间天数差的实例代码


Posted in Javascript onNovember 19, 2013
//判断是否为闰年
function isLeapYear(year){
if(year % 4 == 0 && ((year % 100 != 0) || (year % 400 == 0)))
{
     return true;
}
return false;
}
//判断前后两个日期
function validatePeriod(fyear,fmonth,fday,byear,bmonth,bday){
if(fyear < byear){
return true;
}else if(fyear == byear){
if(fmonth < bmonth){
   return true;
} else if (fmonth == bmonth){
   if(fday <= bday){
    return true;
   }else {
    return false;
   }
} else {
   return false;
}
}else {
return false;
}
}
//计算两个日期的差值
function dateDiff(d1,d2){
    var disNum=compareDate(d1,d2);
    return disNum;
}
function compareDate(date1,date2)
{
    var regexp=/^(\d{1,4})[-|\.]{1}(\d{1,2})[-|\.]{1}(\d{1,2})$/;
    var monthDays=[0,3,0,1,0,1,0,0,1,0,0,1];
    regexp.test(date1);
    var date1Year=RegExp.$1;
    var date1Month=RegExp.$2;
    var date1Day=RegExp.$3;
    regexp.test(date2);
    var date2Year=RegExp.$1;
    var date2Month=RegExp.$2;
    var date2Day=RegExp.$3;
if(validatePeriod(date1Year,date1Month,date1Day,date2Year,date2Month,date2Day)){
firstDate=new Date(date1Year,date1Month,date1Day);
     secondDate=new Date(date2Year,date2Month,date2Day);
     result=Math.floor((secondDate.getTime()-firstDate.getTime())/(1000*3600*24));
     for(j=date1Year;j<=date2Year;j++){
  if(isLeapYear(j)){
      monthDays[1]=2;
  }else{
      monthDays[1]=3;
  }
  for(i=date1Month-1;i<date2Month;i++){
      result=result-monthDays[i];
  }
     }
     return result;
}else{
    alert('对不起第一个时间必须小于第二个时间,谢谢!');
    exit;
}
}

调用该函数传递两个时间值:2013-01-19   2013-12-19

days = dateDiff(d1,d2);

Javascript 相关文章推荐
基于jquery的一行代码轻松实现拖动效果
Dec 28 Javascript
jQuery打字效果实现方法(附demo源码下载)
Dec 18 Javascript
分享一个插件实现水珠自动下落效果
Jun 01 Javascript
Vue组件开发初探
Feb 14 Javascript
bootstrap table表格插件使用详解
May 08 Javascript
jQuery Jsonp跨域模拟搜索引擎
Jun 17 jQuery
react-native 完整实现登录功能的示例代码
Sep 11 Javascript
jquery鼠标悬停导航下划线滑出效果
Sep 29 jQuery
基于vue.js的分页插件详解
Nov 27 Javascript
layDate日期控件使用方法详解
Nov 15 Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
Mar 03 Javascript
javascript设计模式 ? 享元模式原理与用法实例分析
Apr 15 Javascript
JS获取当前网址、主机地址项目根路径
Nov 19 #Javascript
jquery ajax 简单范例(界面+后台)
Nov 19 #Javascript
javaScript array(数组)使用字符串作为数组下标的方法
Nov 19 #Javascript
简单时间提示DEMO从0开始一直进行计时
Nov 19 #Javascript
鼠标滑在标题上显示图片的JS代码
Nov 19 #Javascript
JS简单实现登陆验证附效果图
Nov 19 #Javascript
JS随机漂浮广告代码具体实例
Nov 19 #Javascript
You might like
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
2015/10/21 PHP
PHP+Ajax实现验证码的实时验证
2016/07/20 PHP
php的常量和变量实例详解
2017/06/27 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
yii2实现Ueditor百度编辑器的示例代码
2018/11/02 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
解决PHP Opcache 缓存刷新、代码重载出现无法更新代码的问题
2020/08/24 PHP
文本加密解密
2006/06/23 Javascript
使用TextRange获取输入框中光标的位置的代码
2007/03/08 Javascript
JS写的贪吃蛇游戏(个人练习)
2013/07/08 Javascript
利用毫秒减值计算时长的js代码
2013/09/22 Javascript
详解MVC如何使用开源分页插件(shenniu.pager.js)
2016/12/16 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
vuex 的简单使用
2018/03/22 Javascript
使用Vuex解决Vue中的身份验证问题
2018/09/28 Javascript
深入了解JavaScript 私有化
2019/05/30 Javascript
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
实例讲解JavaScript 计时事件
2020/07/04 Javascript
VUE项目实现主题切换的多种方法
2020/11/26 Vue.js
python发送伪造的arp请求
2014/01/09 Python
kNN算法python实现和简单数字识别的方法
2014/11/18 Python
Python wxPython库使用wx.ListBox创建列表框示例
2018/09/03 Python
python flask 如何修改默认端口号的方法步骤
2019/07/12 Python
python实现猜数游戏
2020/03/27 Python
python适合做数据挖掘吗
2020/06/16 Python
Python 如何调试程序崩溃错误
2020/08/03 Python
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
英国顶级珠宝品牌之家:John Greed
2018/06/09 全球购物
学生实习自我鉴定
2013/10/11 职场文书
法律七进实施方案
2014/03/15 职场文书
高中生学习计划书
2014/09/15 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
暑期社会实践证明书
2014/11/17 职场文书
css3中2D转换之有趣的transform形变效果
2022/02/24 HTML / CSS