之前写过饿了吗的时间组件的使用的方法,但是我们实际操作的过程中其实很多的时候是需要根据用户输入的时间来判断他们的时间间隔的,所以今天就简单的写一个可以世界调用的方法用来处理计算中间的天数。

不BB,看代码:

       /**
       * @DateDiff 计算相差的天数
       * @param Date_end 结束时间
       * @param Date_start 开始时间
       * @returns {number} 相差天数
       */
      DateDiff(Date_end, Date_start){
        let  aDate,  oDate1,  oDate2,  iDays;
        Date_end = Date_end.split(" "); //将时间以空格划分为两个数组  第一个数组是 2019-05-20 第二个数组是 00:00:00
        aDate   =  Date_end[0].split("-"); //获取第一个数组的值
        oDate1 = new Date(aDate[0] , aDate[1] ,aDate[2]);  //将前半个数组以-拆分,每一个是一个数值
        Date_start = Date_start.split(" ");
        aDate   =  Date_start[0].split("-");
        oDate2 = new Date(aDate[0] , aDate[1] , aDate[2]);
        iDays   =  parseInt(Math.abs(oDate1  -  oDate2)  /  1000  /  60  /  60  /24);    //把相差的毫秒数转换为天数
        return  iDays;
      },

直接调用该方法就可以拿到对应的天数,这里需要说明一点:

第一:我们时间格式是有很多种的,如果您的时间格式就是date格式的,那么就不需要将用空格将时间分割开。

第二:如果时间格式是datetime的,也要看您的时间格式中间是什么作为分隔符的,那么split就需要分离什么。这个应该你们会明白!

谢谢阅读!

Logo

前往低代码交流专区

更多推荐