关于前端:计算两个日期相差多少年月日

计算规定为:一月为30天,一年为360天
办法入参为两个日期相差的天数(number型)

// 两个日期相差多少年月日
    dataDiff(daystotal){
      let backdata = '';
       if(daystotal<30){
        backdata = daystotal+'天'
      }else if(daystotal>=30 && daystotal<360){
        let months = Math.floor((daystotal)/30)+'月';
        let days="";
        if((daystotal)%30){
          days = (daystotal)%30+'天'
        }
        backdata = months+days
      }else if(daystotal>=360){
        let years = Math.floor((daystotal)/360)+'年';
        let months ='';
        if((daystotal)%360){
          months = this.dataDiff((daystotal)%360)
        }
        backdata = years+months
      }
      return backdata
    }

另附moment计算两个日期相差天数的办法:


let totaldays = moment(endTime).diff(moment(startTime), 'days')  
//  开始工夫和完结工夫的时间差,以“天”为单位
//  endTime和startTime都是毫秒数(new Data().getTimes())

this.dataDiff(360);
//1年
this.dataDiff(405);
//1年1月25天
this.dataDiff(385);
//1年25天
this.dataDiff(355);
//11月25天
this.dataDiff(55);
//1月25天
this.dataDiff(25);
//25天

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理