首页 > 解决方案 > 如何检查两个时间之间的差异以及它是否在角度 2/4 的同一日期?时间格式,如“HH:mm AM”

问题描述

我想检查我的时间段是否在同一日期以进行验证

let startDate = currentSelection.startTimeHr + ":" + currentSelection.startTimeMin + " " + currentSelection.startTimeAMPM
let endDate = currentSelection.stopTimeHr + ":" + currentSelection.stopTimeMin + " " + currentSelection.stopTimeAMPM

开始日期= 02:30 AM
结束日期 = 06:45 PM

很容易 if 可以返回 true 或 false 布尔值

标签: jqueryangulartypescript

解决方案


您可以在这里做的一件事是将时间转换为日期对象并进行比较,希望这会有所帮助

var d = new Date(),
    s = "02:30 AM",
    parts = s.match(/(\d+)\:(\d+) (\w+)/),
    hours = /am/i.test(parts[3]) ? parseInt(parts[1], 10) : parseInt(parts[1], 10) + 12,
    minutes = parseInt(parts[2], 10);

d.setHours(hours);
d.setMinutes(minutes);

console.log(d);

var d2 = new Date(),
    s = "06:45 PM",
    parts = s.match(/(\d+)\:(\d+) (\w+)/),
    hours = /am/i.test(parts[3]) ? parseInt(parts[1], 10) : parseInt(parts[1], 10) + 12,
    minutes = parseInt(parts[2], 10);

d2.setHours(hours);
d2.setMinutes(minutes);

if(d < d2)
    alert('true');
else
    alert('false');

推荐阅读