javascript - 两种字符串格式 HH:MM:SS 的条件比较
问题描述
嗨,我是 javascript 新手,我想实现一个代码,其中我在开始时间下方有两个 var,结束时间是军事格式
var start1= 08:00:00
var endto=03:00:00
我想创造一个条件,如果我的给定时间在start1
and end to之间
前任:
giventime = 02:00:00
它会通过,因为它在范围内08:00:00 - 03:00:00
giventime = 05:00:00
它不会通过,因为它不在范围内08:00:00 - 03:00:00
我尝试使用下面的代码:
var start1= 08:00:00
var endto=03:00:00
var giventime = 02:00:00
if giventime>start1 && giventime<=endto {
//but doesnt work it should allow because 02:00:00 is withing the range of
start1 and endto
}
解决方案
您可以添加具有给定时间的任何日期并将其转换为Date
然后用于getTime()
获取miliseconds
. 现在检查是否start > end
从减去 1 天start
var start1= '08:00:00'
var endto='03:00:00'
var givenTime = '02:00:00'
function isTimeGreater(start,end,given){
start = new Date(`Feb 12 2019 ${start}`).getTime();
end = new Date(`Feb 12 2019 ${end}`).getTime();
given = new Date(`Feb 12 2019 ${given}`).getTime();
if(start > end){
start -= 24*60*60 * 1000;
}
return start < given && given < end;
}
console.log(isTimeGreater(start1,endto,givenTime))
console.log(isTimeGreater(start1,endto,'04:00:00'))
推荐阅读
- logstash - 无法从 Logstash 读取文件
- node-sass - 运行 fossasia 的 open-event-frontend 时出错
- c# - 如何使用 selenium webdriver C# 检查列表框中是否存在元素/文本
- c - For循环在C中递归排列字符串时会产生错误
- elasticsearch - 如何使用 elasticsearch 过滤查询结果
- python-3.x - Odoo 11:在 sale.order.line 模型中创建计算字段时出现问题
- python - 我在 python 中收到 pyttsx3 的“找不到成员”错误
- java - java使用AudioWaveformCreator绘制2(多个)波形
- php - 图片上传 Laravel
- git - 如何检测远程删除的合并分支