如何计算俩日期相隔多少年,多少月,多少天或者两时间相差XX年XX月XX日
假设时开始时间为2015年4月2日,结束时间为2019年4月4月;
需要先熟悉一下时间对象得一些方法,可参考教程http://www.w3school.com.cn/jsref/jsref_obj_date.asp;
需要将上述时间转换为时间对象,通过new Date()实现;
let startDate = new Date(2015,3,2); 2015/4/2
let endDate = new Date(2019,3,4); 2019/4/4
//得出两时间的年
let startYear = startDate.getFullYear() ; 2015
let endYear = endDate.getFulllYear(); 2019
一、计算出时间相隔多少月
相差月 = 结束时间总月数 - 开始时间得总月数
总月数 = XXXX年 * 12 + 当前多少月;
2015年4月2日总月数 let startMonths = startYear * 12 + startDate.getMonth() + 1 = 24184;
2019年4月4日总月数 let endMonths = endYear * 12 + endDate.getMonth() + 1 = 24232;
let intervalMonths = endMonths - startMonths = 24232 - 24184 = 48个月;
算出相差月数,则还存在时间天差,则:
let gapDays = endDate.getDate() - startDate.getDate() = 4 - 2 = 2天;
则最后结果为: 相差48个月零3天;
二、计算俩时间相隔多少年
相差年 = Math.floor((相差总月数 / 12))+ 相差总月数 % 12;
let intervalYears = Math.floor(48 / 4) + (48 %12)= 4;
相差4年
三、计算出两时间相差多少天;
相差得天数 = 2019年4月4日的总天数 - 2015年4月2日的总天数 ;
总天数 = 当前时间绝对毫秒数 / 天总毫秒数 天总毫秒数 = 24 * 60 * 60 * 1000 = 86400000
let startDays = startDate.getTime() / 86400000;
let endDays = endDate.getTime() / 86400000;
let intervalDays = endDays - startDays = 17989 - 16526 = 1463;
则相差1463天;
四、计算两时间相差XX年XX月XX天
相差得年月 = Math.floor(48 / 12) + 48 % 12 = 4年0月;
相差得天数 = endDate.getDate() - startDate.getDate() = 4 - 2 = 2天;
则相差4年零2天。
如何计算俩日期相隔多少年,多少月,多少天或者两时间相差XX年XX月XX日相关推荐
- 计算两个日期相隔多少年,多少月,多少天
/**function:计算两个日期相隔多少年,多少月,多少天*param string $date1[格式如:2011-11-5]*param string $date2[格式如:2012-12-0 ...
- 2017广东全国计算机12月,2018年广东考研时间:2017年12月23日至24日
2018年考研时间已经公布,出国留学考研网为大家提供2018年广东考研时间:2017年12月23日至24日,更多考研资讯请关注我们网站的更新! 2018年广东考研时间:2017年12月23日至24日 ...
- js计算两个时间相差的年、月、日、时、分、秒。
/* 时间格式:2016-8-31 10:35:00 或 2016/8/31 10:35:00 */ var dateObj=dayCha('2016-8-17','2019-6-30') //执行方 ...
- 贪玩蓝月服务器维护需多少时间,手游贪玩蓝月维护多长时间 | 手游网游页游攻略大全...
发布时间:2017-08-05 诛仙手游体验服11月8日更新维护内容 诛仙手游体验服11月8日更新维护内容,双11活动上线 .下面蚕豆网小编就给大家带来这篇攻略,大家一起来看看吧. 诛仙手游双11活动 ...
- JAVA获取一个月的开始与结束时间以及两个日期相差几个月
一.一个月的开始与结束时间代码如下 /*** 获取指定月的开始日期* @param currentDate* @return*/public static Date getStartDate(Stri ...
- 江西省2019计算机二级报名日期,2020年3月江西计算机等级报名时间、报名入口【2019年12月18日-27日】...
[导语]<2020年3月江西全国计算机等级考试工作通知>现已发布.2020年3月江西计算机等级报名时间:2019年12月18日-27日,考试时间:2020年3月28日-30日,小编现将报考 ...
- 四川2020年三月计算机等级考试报名时间,四川2020年3月计算机等级考试报名时间...
摘要: 四川2020年3月计算机等级考试报名时间为你介绍四川2020年3月计算机等级考试报名时间 报名时间:四川2020年3月计算机等级考试报名时间为2020年12月23日14:00至12月31日18 ...
- 12月江苏计算机考试报名入口,江苏2019年12月计算机等级报名时间丨报名系统
2019年12月江苏计算机考试报名时间:预计在11月左右. 计算机报名全部采用网上报名和网上支付的方式进行报名.请考生登录全国计算机等级考试报名系统 (http://ncre.cqksy.cn/NCR ...
- 江苏2021年计算机二级报名时间,江苏3月计算机二级考试报名时间安排
摘要: 江苏3月计算机二级考试报名时间安排为你介绍2020年3月江苏全国计算机二级考试报名时间已经公布.以下是小编为大家整理的2020年3月江苏计算机二级考试报名时间相关内容,希望对大家有所参考与帮助 ...
最新文章
- TP5_接口开发之全局异常控制
- php include传参数,浅谈php中include文件变量作用域
- asp中正则表达式应用
- task search in offline - three filters implementation
- SAP CRM事务码COMMPR01无法搜索Individual Object
- php 计时器microtime 以及去掉数组重复值array_unique
- python pep8_Python 代码风格 和 PEP8
- 读取访问权限冲突怎么解决_CPU怎么保证内存访问冲突?一致性?
- 20个开发人员非常有用的Java功能代码(一)
- 微信小程序点击事件传参方法
- scratch编程体感游戏
- wingdings字体符号在哪_wingding、Wingdings2、wingdings3字体特殊符号与键盘字母相对应位置...
- 一起来玩U3D之场景转换+关卡选择
- 暴雪战网重装失败问题解决
- 机器学习服务文本翻译能力升级,中文直译模型让译文表达更地道!
- jbpm创建流程图_JBPM流程图不显示
- C# 调用摄像头解析二维码
- 白盒测试方法 + 实战
- iOS Password AutoFill开发指南
- 用定时器T0查询方式P0口8位控制LED闪烁
热门文章
- 用matlab跳动的心,[ 教程 ] 用Arduino制作一个跳动的心
- 简单编程---哥德巴赫猜想
- 使用集集快速添加公众号预约功能
- 解读 CreateMutexWin32A
- 8421码,5421码,2421码,余三码之间的区别
- rm: cannot remove `/usr/local/tmp/‘: Directory not empty
- 简单几个步骤,通过github搭建浪漫的表白网页
- 【学术会议】如何rebuttal学术论文?
- 金山办公2020校招C++开发工程师笔试题(一)
- 100uF,10uF,100nF,10nF不同的容值,这些参数是如何确定的?