javascript - 如何使用 Javascript 将当前时间与格式化为字符串的时间范围进行比较

标签 javascript date time compare

我的数据库中有两次格式化为字符串,它们的格式分别是上午 8:30 和下午 9:00。使用Javascript,我不想获取当前时间并查看我是否在两个时间的范围内。我该怎么做

最佳答案

将开始时间、结束时间和当前时间转换为 JavaScript Date 对象,然后检查是否 start <= current < end 。如果开始日期小于结束日期,事情就会变得棘手:

// The un-important bits
var d0 = new Date("01/01/2001 " + "8:30 AM");
var d1 = new Date("01/01/2001 " + "9:00 PM");
var d = new Date("01/01/2001");
d.setHours(new Date().getHours());
d.setMinutes(new Date().getMinutes());

// For testing
console.log(d0, d, d1);

// The important bit
console.log(
    d0 < d1
        ? (d0 <= d && d < d1)
        : (d1 <= d && d < d0) == false
);

关于javascript - 如何使用 Javascript 将当前时间与格式化为字符串的时间范围进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11268680/

相关文章:

javascript - 如何检查div标签是否为空?

javascript - 将 next.js 与 yarn 工作区一起使用

javascript - Ajax Html 编辑器不计算使用 ASP.NET C# 的母版页中的字符

c++ - 如何从 boost::posix_time::ptime 获取自纪元时间以来的毫秒数

java.sql.Time 对象与 java.sql.Date 对象混淆

javascript - 在页面上使用 jQuery UI 控件的多个实例时出现问题。 Accordion 控件的多种用途

jquery - 谷歌日历时区问题

arrays - 如何使用包含日期的字典对数组进行排序?

sql - 如何将 Teradata SQL 中的 Char 格式的 'date' 更改为日期格式?

javascript - 如何向格式为 HH :MM:SS in 24 hour format 的字符串添加小时