js 两日期天数差、某一日期前推后推固定天数后的日期、时间格式化

1、两日期天数差

getDiffDate(day1,day2){
      let date1 = new Date(day1);
      let date2 = new Date(day2);
      date1 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate());
      date2 = new Date(date2.getFullYear(), date2.getMonth(), date2.getDate());
      const diff = date1.getTime() - date2.getTime(); //计算出相差的时间戳
      const diffDate = diff / (24 * 60 * 60 * 1000); //计算相关的天数
      return diffDate;
    },

2、某一日期前推后推固定天数后的日期

     getNewData(dateTemp, days,type) {  
        var nDate = ''
        if (JSON.stringify(dateTemp).includes('-')) {
          nDate = new Date(dateTemp)
        } else {
          nDate = dateTemp
        }
        var millSeconds = ''
        if (type == 1) { 
          millSeconds = Math.abs(nDate) + (days * 24 * 60 * 60 * 1000);  
        } else {
          millSeconds = Math.abs(nDate) - (days * 24 * 60 * 60 * 1000);  
        }  
        var rDate = new Date(millSeconds);  
        var year = rDate.getFullYear();  
        var month = rDate.getMonth() + 1;  
        if (month < 10) month = "0" + month;  
        var date = rDate.getDate();  
        if (date < 10) date = "0" + date;  
        return (year + "-" + month + "-" + date);  
     },

3、时间格式化

    formatTime(time, format) {
      var time = time ? new Date(time) : new Date();
      var year = time.getFullYear();
      var month = (time.getMonth() + 1).toString().length == 1 ? "0" + (time.getMonth() + 1).toString() : (time.getMonth() + 1);
      var day = time.getDate().toString().length == 1 ? "0" + time.getDate() : time.getDate();
      var hour = time.getHours() < 10 ? '0' + time.getHours() : time.getHours();
      var m = time.getMinutes() < 10 ? '0' + time.getMinutes() : time.getMinutes();
      var s = time.getSeconds() < 10 ? '0' + time.getSeconds() : time.getSeconds();
      var result = format.replace('YYYY', year).replace('MM', month).replace('dd', day).replace('HH', hour).replace('mm', m).replace('ss', s);
      return result; 
    },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值