js 给定时间,如'2013-08-30',换算和今天的天数差

  由于项目中需要用到给定时间格式,如'2013-08-30',需要计算其和当前时间的间隔,需要算出间隔的时间,自己在网上搜索,并做了下简单的整理,总体思路分3步:1.将给定的时间和当前时间转换为毫秒 2.计算当前时间和给定时间的毫秒差值 3.将毫秒差值在转化为天数.具体的代码如下:

  

 1 <script>
 2         function getGapDays(str) {
 3             var str = str.replace(/-/g,'/'); // 将-替换成/,因为下面这个构造函数只支持/分隔的日期字符串
 4             var date = new Date(str); // 构造一个日期型数据,值为传入的字符串
 5             var targetTime = date.getTime();
 6             var currentTime = Date.now();
 7             var gap, days;
 8             console.info(targetTime, currentTime)
 9             
10             if(currentTime < targetTime) {
11                 gap = targetTime - currentTime;
12                 days = Math.floor(gap/86400000);
13                 console.info('给定时间比当前时间多'+days+'');
14             }
15             else if(currentTime === targetTime) {
16                 console.info('给定时间和当前时间相等'); 
17             }
18             else {
19                 gap = currentTime - targetTime;
20                 days = Math.floor(gap/86400000);
21                 console.info('给定时间比当前时间少'+days+'');
22             }
23         }
24         
25         getGapDays('2013-08-30');
26     </script>

  第一次跟技术相关的,写的不好,还希望大家多多包涵.

posted @ 2017-03-06 19:47  韩帅  阅读(370)  评论(0编辑  收藏  举报