js常用日期处理

时间格式化 yyyy/MM/dd hh:mm:ss

var formatTime = function(date) {
   if(date instanceof Date){
       const year = date.getFullYear()
       const month = date.getMonth() + 1
       const day = date.getDate()
       const hour = date.getHours()
       const minute = date.getMinutes()
       const second = date.getSeconds()
       return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
   }else if(typeof date =='number'){
       const d = new Date(date)
       return formatTime(d)
    }else{
       return null;
    }
}

 

在给定的日期基础上加时间

​
/**
* 在给定的日期基础上加时间
* @param {日期} date 
* @param {数量} num 
* @param {单位} unit  y年 M月 d日 h时 m分 s秒
*/
var addTime = function(date,num,unit) {
     if(date instanceof Date){
          const newD = new Date(date.getTime())
          if(!unit){
                    newD.setTime(date.getTime()+num)
          }else if(unit=='y'){
                    newD.setFullYear(newD.getFullYear()+num)
          }else if(unit=='M'){
                    newD.setMonth(newD.getMonth()+num)
          }else if(unit=='d'){
                    newD.setDate(newD.getDate()+num)
          }else if(unit=='h'){
                    newD.setHours(newD.getHours()+num)
          }else if(unit=='m'){
                    newD.setMinutes(newD.getMinutes()+num)
          }else if(unit=='s'){
               newD.setSeconds(newD.getSeconds()+num)
          }
          return newD;
      }else if((typeof date) =='number'){
            return addTime(new Date(date))
      }else{
           return null;
       }
 }

​

 

获取本周的日期数据 

var weekDateArray = function(date){
   var dateArray = new Array(7);
   const dnx = date.getDay()*-1
   for (var i = dnx; i < dnx+7; i++) {
      const tmpDate = new Date(date.getTime())
      tmpDate.setDate(date.getDate()+i)
      dateArray[i - dnx] = {
         weekStr: WEEK[tmpDate.getDay()],
         dateStr: formatMD(tmpDate),
         timeStr:formatDate(tmpDate),
         isToday: (i==0),
         time: tmpDate
       }
     }
     return dateArray;
}

 

获取时间的日期部分 

 var formatMD = function(date)  {
            if(date instanceof Date){
                const month = date.getMonth() + 1
                const day = date.getDate()
                return [month, day].map(formatNumber).join('-')
            }
            else if(typeof date =='number'){
                const d = new Date(date)
                return formatMD(d)
            }
            else{
                return null;
            }
        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值