You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用moment.js判断当前时间是否早于11:00?

使用Moment.js检查当前时间是否早于11:00

嘿,我来帮你搞定这个时间判断的问题~首先得指出你现有代码里的小误区:moment(todaysDate).startOf(time)的用法不对,startOf()方法接受的是时间单位(比如'day'、'hour'),不是具体的时间字符串,所以这样写没法得到你想要的11:00时间节点。下面给你两种清晰可靠的实现方式:

方法一:构造当天11:00的时间对象,用内置方法对比

这种方法最直观,也符合Moment.js的最佳实践:先创建一个当天11点整的时间对象,再用Moment自带的isBefore()方法和当前时间对比,精度能到毫秒,非常准确。

// 获取当前时间的Moment对象
const now = moment();
// 构造当天11:00:00.000的时间对象
const elevenOClock = moment().hour(11).minute(0).second(0).millisecond(0);

// 检查当前时间是否早于11:00
if (now.isBefore(elevenOClock)) {
  console.log("当前时间早于11:00");
  // 这里写入你要执行的逻辑代码
} else {
  console.log("当前时间不早于11:00");
}

方法二:提取时分直接判断(简化版)

如果不需要毫秒级的精度,也可以直接提取当前时间的小时和分钟来做判断,逻辑更简单:

const now = moment();
const currentHour = now.hour();

// 简化逻辑:只要当前小时小于11,就判定为早于11:00
// 注意:这个写法会把11:00整及之后的时间都归为"不早于",适合对分钟级边界要求不高的场景
if (currentHour < 11) {
  console.log("当前时间早于11:00");
  // 写入你的执行逻辑
} else {
  console.log("当前时间不早于11:00");
}

总结一下,方法一的精度更高、代码更规范,推荐优先使用哦!

内容的提问来源于stack exchange,提问作者evan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 20:07:45