我在 JavaScript 中生成的一些代码有问题。我想计算 24 小时制两次之间的差异。数据来自两个输入时间字段:
<input type="time" id="start" />
<input type="time" id="end" />
因此,时间以字符串 00:00 的形式出现,这对数字计算没有帮助。
我的解决方法是从结尾减去开头。如果结束时间更长,这非常有效,但是如果结束时间超过 11:00 (00:00),我最终会得到一个负数。如果结尾低于开头,我尝试将 24 添加到结果中,但我仍然得到一个负数。这似乎是一个愚蠢的问题,但我从来没有那么擅长数学。
var numHours;
if(time_end < time_start){
numHours = parseInt(t_e.substring(0,2)) - parseInt(t_s.substring(0,2)) + 24;
}else{
numHours = parseInt(t_e.substring(0,2)) - parseInt(t_s.substring(0,2));
}
可能(肯定)有更好的方法来做到这一点,但我怎样才能让它发挥作用。我也可以计算分钟以获得更准确的时差。