如何用JavaScript判断指定日期是否在当前时间24小时范围内?
检查日期是否距离当前时间不超过24小时
要判断一个给定日期是否和当前时间的间隔在24小时以内,可以通过时间戳对比实现:
- 若目标日期是2022年11月2日(已过去多天),判断结果为false
- 若目标日期是2022年11月11日,且检查时距离该日期不足24小时,判断结果为true
实现思路
核心逻辑是计算当前时间减去24小时的时间戳,再将目标日期的时间戳与这个值对比:如果目标时间戳更大,说明它处于最近24小时的范围内。
代码示例
// 目标日期的毫秒级时间戳(对应2022年11月11日左右) const targetTimestamp = 1667446218000; // 获取当前时间的毫秒级时间戳 const now = Date.now(); // 24小时对应的毫秒数:24小时×60分钟×60秒×1000毫秒 const twentyFourHoursMs = 24 * 60 * 60 * 1000; // 判断目标时间是否在最近24小时内 if (targetTimestamp > now - twentyFourHoursMs) { console.log('true'); } else { console.log('false'); }
代码说明
Date.now():直接获取当前时间的毫秒级时间戳,无需创建Date实例,性能更优twentyFourHoursMs:提前计算好24小时对应的毫秒数,让代码逻辑更清晰- 对比逻辑:
targetTimestamp > now - twentyFourHoursMs等价于“目标时间晚于24小时前的时间”,即目标时间处于当前时间的前24小时到现在的区间内
内容的提问来源于stack exchange,提问作者Eric Evans
相关产品推荐
相关产品推荐

