JavaScript实现给定时间相加天数的方法


Posted in Javascript onJanuary 25, 2016

本文实例讲述了JavaScript实现给定时间相加天数的方法。分享给大家供大家参考,具体如下:

/**
* 时间相加处理函数
* @param date 需要计算的时间(xxxx-xx-xx)
* @param plusDays 要加的天数(整数)
*/
function calcuDate(date, plusDays) {
  var dateArray = date.split("-");
  var year = +dateArray[0];
  var month = +dateArray[1];
  var day = +dateArray[2];
  var oriDay = day;
  var secondMonthDays = ((year%4 === 0 && year%100 !== 0) || year%400 === 0) ? 29 : 28;
  while(plusDays>0) {
    oriDay = day
    day += plusDays;
    switch(month) {
      case 4:
      case 6:
      case 9:
      case 11:
        if(day > 30) {
          plusDays -= (30-oriDay)+1;
          month++;
          day = 1;
        } else {
          plusDays = 0;
        }
      break;
      case 2:
        if(day > secondMonthDays) {
          plusDays -= (secondMonthDays-oriDay)+1;
          month++;
          day = 1;
        } else {
          plusDays = 0;
        }
      break;
      default:
        if(day > 31) {
          plusDays -= (31-oriDay)+1;
          day = 1;
          month++;
        } else {
          plusDays = 0;
        }
    }
    if(month>12) {
      month = 1;
      year++;
    }
  }
  return createTimeString(year, month, day);
}

当然,除了这种方式之外,还有其他的,类似于new Date传参之类的解决方案,这也算是一种吧

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
firefox中用javascript实现鼠标位置的定位
Jun 17 Javascript
javascript 兼容FF的onmouseenter和onmouseleave的代码
Jul 19 Javascript
Jquery中增加参数与Json转换代码
Nov 20 Javascript
jQuery 选择表格(table)里的行和列及改变简单样式
Dec 15 Javascript
JS实现Enter键跳转及控件获得焦点
Aug 12 Javascript
javascript 函数声明与函数表达式的区别介绍
Oct 05 Javascript
JS JSOP跨域请求实例详解
Jul 04 Javascript
基于jQuery ligerUI实现分页样式
Sep 18 Javascript
浅谈angular2的http请求返回结果的subcribe注意事项
Mar 01 Javascript
微信小程序 在线支付功能的实现
Mar 14 Javascript
layui框架与SSM前后台交互的方法
Sep 12 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
Oct 24 Javascript
jQuery中inArray方法注意事项分析
Jan 25 #Javascript
jquery ui dialog替代confirm实例分析
Jan 25 #Javascript
AngularJS控制器controller正确的通信的方法
Jan 25 #Javascript
AngularJS入门心得之directive和controller通信过程
Jan 25 #Javascript
详解jquery事件delegate()的使用方法
Jan 25 #Javascript
AngularJS中的Directive实现延迟加载
Jan 25 #Javascript
AngularJS中的Directive自定义一个表格
Jan 25 #Javascript
You might like
php引用地址改变变量值的问题
2012/03/23 PHP
php模拟用户自动在qq空间发表文章的方法
2015/01/07 PHP
功能强大的PHP POST提交数据类
2016/07/15 PHP
详解Laravel视图间共享数据与视图Composer
2016/08/04 PHP
PHP序列化操作方法分析
2016/09/28 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
在laravel中实现事务回滚的方法
2019/10/10 PHP
jquery pagination插件实现无刷新分页代码
2009/10/13 Javascript
jQuery插件开发基础简单介绍
2013/01/07 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
2016/01/07 Javascript
BootStrap table表格插件自适应固定表头(超好用)
2016/08/24 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
jquery实现文本框的禁用和启用
2016/12/07 Javascript
详解Vue的computed(计算属性)使用实例之TodoList
2017/08/07 Javascript
JS使用setInterval实现的简单计时器功能示例
2018/04/19 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
[01:00]一分钟回顾2018DOTA2亚洲邀请赛现场活动
2018/04/07 DOTA
使用PyInstaller将Python程序文件转换为可执行程序文件
2016/07/08 Python
简单实现python数独游戏
2018/03/30 Python
一行代码让 Python 的运行速度提高100倍
2018/10/08 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
Python类装饰器实现方法详解
2018/12/21 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
详解Python sys.argv使用方法
2019/05/10 Python
全球500多个机场的接送服务:Suntransfers
2019/06/03 全球购物
德国净水壶和滤芯品牌:波尔德PearlCo(家用净水器)
2020/04/29 全球购物
小学生新学期寄语
2014/01/19 职场文书
优秀应届毕业生推荐信
2014/02/18 职场文书
会计与审计专业自荐信范文
2014/03/15 职场文书
春节晚会主持词
2014/03/24 职场文书
2015年社区宣传工作总结
2015/05/20 职场文书
导游词之西安骊山
2019/12/03 职场文书
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python
详解JSON.parse和JSON.stringify用法
2022/02/18 Javascript
golang定时器
2022/04/14 Golang