在Javascript
中,我有4个带值的变量。
以下是示例:
var start_hour = 1;
var start_minute = 00;
var end_hour = 6;
var end_minute = 30;
我想创建一个javascript函数,可以计算持续时间和打印,如上例所示,持续时间输出应为5:30
表示5 Hours & 30 Minutes
。
答案 0 :(得分:1)
请参阅此JSFiddle http://jsfiddle.net/sajith/LkZC7/
var start_hour = 1;
var start_minute = 00;
var end_hour = 6;
var end_minute = 30;
start_minute = parseInt(start_minute, 10);
end_minute = parseInt(end_minute, 10);
if (start_hour < end_hour ) {
var start_mins = start_hour * 60 + start_minute;
var end_mins = end_hour * 60 + end_minute;
var dur_mins = end_mins - start_mins;
var dur_hours = Math.floor(dur_mins / 60);
dur_mins = dur_mins % 60;
} else {
// Start hour is greater than end hour
}
alert(dur_hours + ":" + dur_mins);
答案 1 :(得分:0)
var start_hour = 1;
var start_minute = 00;
var end_hour = 6;
var end_minute = 30;
var start = new Date(2014, 1, 1, start_hour, start_minute, 0, 0);
var end = new Date(2014, 1, 1, end_hour, end_minute, 0, 0);
diffMilliseconds = Date.parse(end) - Date.parse(start);
hours = Math.floor(diff/(1000*60*60));
minutes = (diff%(1000*60*60)) / (1000 * 60);
答案 2 :(得分:0)
没有库,假设开始&lt; = end:
var h = end_hour - start_hour;
var m = end_minute - start_minute;
if(start_minute > end_minute){
var dt = 60 - start_minute + end_minute;
h = h-1;
m = dt;
if(dt>60){
m = dt%60;
h = h + 1;
}
}
document.write(h+" hour(s) and "+m+" minute(s).");