日期时间处理函数

最近的小程序项目中涉及到了年假规划,对日期、时间的处理函数用的比较多,在此做一下简单总结。

0 获取当前年-月-日

function getNowDate() {
  let now = new Date();
  let year = now.getFullYear();
  let month = now.getMonth() + 1;
  let date = now.getDate();
  return year + "-" + month + "-" + date;
}

1 获取当前年-月-日 时:分:秒

function getNowDateTime() {
  let date = new Date();
  let seperator1 = "-";
  let seperator2 = ":";
  let month = date.getMonth() + 1;
  let strDate = date.getDate();
  let strHours = date.getHours();
  let strMinutes = date.getMinutes();
  let strSeconds = date.getSeconds();
  if (month >= 1 && month <= 9) {
    month = "0" + month;
  }
  if (strDate >= 0 && strDate <= 9) {
    strDate = "0" + strDate;
  }
  if (strHours >= 0 && strHours <= 9) {
    strHours = "0" + strHours;
  }
  if (strMinutes >= 0 && strMinutes <= 9) {
    strMinutes = "0" + strMinutes;
  }
  if (strSeconds >= 0 && strSeconds <= 9) {
    strSeconds = "0" + strSeconds;
  }
  let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + " " + strHours + seperator2 + strMinutes + seperator2 + strSeconds;
  return currentdate;
}

2 判断两个时间段是否交叉

实现思路:第二个时间段的开始时间晚于第一个日期的结束时间即可

function isCross(endTime1, beginTime2) {
  let beginTime2Int = new Date(beginTime2).getTime();
  let endTime1Int = new Date(endTime1).getTime();
  if (beginTime2Int <= endTime1Int) {
    return true;
  } else {
    return false;
  }
}

3 判断选择的日期是否在今天之前

实现思路:分别将当前日期和要比较的日期getTime(),然后比较即可

function isBeforToday(selectedTime) {
  let date = new Date();
  if (new Date(selectedTime).getTime() < new Date(date).getTime()) {
    return true;
  } else {
    return false;
  }
}

另外,因为不能今天休年假今天才申请,所以之后修改了判断方式,多了一个等号

function isBeforToday(selectedTime) {
  let date = new Date();
  if (new Date(selectedTime).getTime() <= new Date(date).getTime()) {
    return true;
  } else {
    return false;
  }
}

4 计算日期间隔

function getDateInterval(begin, end) {
  return (new Date(end).getTime() - new Date(begin).getTime()) / (24 * 60 * 60 * 1000) + 1;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值