<html>
<head>
<title>时间段长度比较,把较长的时间转换为小时</title>
</head>
<body>
<span>时间段14:00-16:00与时间段14:00-16:30比较,较长的时间段的时长为</span><span id="duration"></span><span>小时。</span>
</body>
<script language="javascript">
function calculateMeetDuration() {
var year=2014, month=1, day=10;
// 第一个时间段,14:00 - 16:00
var planStartHour = "14:00".split(":")[0] * 1;
var planStartMinute = "14:00".split(":")[1] * 1;
var planEndHour = "16:00".split(":")[0] * 1;
var planEndMinute = "16:00".split(":")[1] * 1;
// 第二个时间段,14:00 - 16:30
var actStartHour = "14:00".split(":")[0] * 1;
var actStartMinute = "14:00".split(":")[1] * 1;
var actEndHour = "16:30".split(":")[0] * 1;
var actEndMinute = "16:30".split(":")[1] * 1;
// 计算第一个时间段的时长
var planStart = new Date(year, month, day, planStartHour, planStartMinute);
var planEnd = new Date(year, month, day, planEndHour, planEndMinute);
var planMs = planEnd.getTime() - planStart.getTime();
// 计算第二个时间段的时长
var actStart = new Date(year, month, day, actStartHour, actStartMinute);
var actEnd = new Date(year, month, day, actEndHour, actEndMinute);
var actMs = actEnd.getTime() - actStart.getTime();
// 比较两个时间段的长度,并将较长的时间段转换为小时
var meetDuration = 0;
if (planMs >= actMs) {
meetDuration = planMs / 1000 / 60 / 60;
} else {
meetDuration = actMs / 1000 / 60 / 60;
}
duration.innerHTML = meetDuration.toFixed(1); // 保留一位小数
}
calculateMeetDuration();
</script>
</html>