JS内置对象Date方法整理

2022/1/28 23:34:38

本文主要是介绍JS内置对象Date方法整理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

输入两个日期获取之间相隔的天数

/**
 * @description输入两个日期获取之间相隔的天数
 * @param {string} date1
 * @param {string} date2
 * @return {number}
 * @example date1 = "2020-01-15", date2 = "2019-12-31"
 */
function daysBetweenDates (date1, date2) {
  return Math.abs((+new Date(date1).getTime() - (+new Date(date2).getTime()))) / 24 / 60 / 60 / 1000
};
输入两个Date判断是否是同一天
/**
 * @description输入两个Date判断是否是同一天
 * @param {Date} date1 
 * @param {Date} date2 
 * @returns {boolean}
 * @example new Date('2000/01/01 08:00:00'), new Date('2000/01/01 08:45:00')
 */
function checkDaySame (date1, date2) {
  return  date1.getFullYear() === date2.getFullYear() &&
          date1.getMonth() === date2.getMonth() &&
          date1.getDate()=== date2.getDate()
}
判断两个日期是否相等
/**
 * 判断两个日期是否相等
 * @param {*} date1 
 * @param {*} date2 
 * @returns {boolean}
 * @example new Date('2000/01/01 08:00:00'), new Date('2000/01/01 08:45:00')
 */
function checkDayEqual (date1, date2) {
  return date1.getTime() === date2.getTime()
}
判断两个日期相差是否小于一个小时
/**
 * @description判断两个日期相差是否小于一个小时
 * @param {Date} date1 
 * @param {Date} date2 
 * @returns 
 */
function checkDateWithinOneHour(date1, date2) {
  return Math.abs(date1 - date2) / 1000 / 60 <= 60
}
判断a日期是否早于b日期
/**
 * @description 判断a日期是否早于b日期
 * @param {*} param0 
 * @returns {boolean}
 * @example {a: new Date('2000/01/01 08:00:00'), b: new Date('2000/01/01 08:45:00')}
 */
function checkDateEarilerOne({a, b}) {
  return a < b
}

获取两个日期相差的时分秒

function getDiffDate( a, b ) {
  const dif = Math.abs(a - b);
  const hrs = Math.floor(dif / 1000 / 60 / 60);
  const min = Math.floor(dif / 1000 / 60) % (hrs * 60 || 60);
  const sec = Math.floor(dif / 1000) % (min * 60 + hrs * 60 * 60 || 60);
  return { hrs, min, sec }
}

获取日期下一个一刻钟

function getNextNearestQuarterHourOfDate(date) {
  const quarter = 15 * 60 * 1000;
  const closestQuarter = new Date(Math.round(date / quarter) * quarter);
  const nextQuarter = closestQuarter.getTime() < date.getTime() ? new Date(closestQuarter.getTime() + quarter) : closestQuarter;
  return nextQuarter.getMinutes();
}

 



这篇关于JS内置对象Date方法整理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程