在javascript中添加两个时间变量
如何在javascript中添加两个时间变量 例如,1:在javascript中添加两个时间变量,javascript,Javascript,如何在javascript中添加两个时间变量 例如,1: var a = 17.30hrs var b=1.30hrs 因此,总计应为(a+b)=19.00小时 例2: var a = 23:00hrs var b = 1.30hrs 因此,总计应为(a+b)=00.30小时 这里我们可以使用24小时时间格式 提前感谢您的帮助使用此JavaScript 网上有很多例子。看看这个: // Simple function to calculate time difference betwe
var a = 17.30hrs
var b=1.30hrs
因此,总计应为(a+b)=19.00小时
例2:
var a = 23:00hrs
var b = 1.30hrs
因此,总计应为(a+b)=00.30小时
这里我们可以使用24小时时间格式
提前感谢您的帮助使用此JavaScript
网上有很多例子。看看这个:
// Simple function to calculate time difference between 2 Javascript date objects
function get_time_difference(earlierDate,laterDate)
{
var nTotalDiff = laterDate.getTime() - earlierDate.getTime();
var oDiff = new Object();
oDiff.days = Math.floor(nTotalDiff/1000/60/60/24);
nTotalDiff -= oDiff.days*1000*60*60*24;
oDiff.hours = Math.floor(nTotalDiff/1000/60/60);
nTotalDiff -= oDiff.hours*1000*60*60;
oDiff.minutes = Math.floor(nTotalDiff/1000/60);
nTotalDiff -= oDiff.minutes*1000*60;
oDiff.seconds = Math.floor(nTotalDiff/1000);
return oDiff;
}
以上代码取自:使用此JavaScript
网上有很多例子。看看这个:
// Simple function to calculate time difference between 2 Javascript date objects
function get_time_difference(earlierDate,laterDate)
{
var nTotalDiff = laterDate.getTime() - earlierDate.getTime();
var oDiff = new Object();
oDiff.days = Math.floor(nTotalDiff/1000/60/60/24);
nTotalDiff -= oDiff.days*1000*60*60*24;
oDiff.hours = Math.floor(nTotalDiff/1000/60/60);
nTotalDiff -= oDiff.hours*1000*60*60;
oDiff.minutes = Math.floor(nTotalDiff/1000/60);
nTotalDiff -= oDiff.minutes*1000*60;
oDiff.seconds = Math.floor(nTotalDiff/1000);
return oDiff;
}
上述代码取自:第一个示例
var date = new Date();
date.setHours(17);
date.setMinutes(30);
date.setSeconds(0);
var newDate = new Date(date.getTime());
newDate.setSeconds(newDate.getSeconds() + 0);
newDate.setMinutes(newDate.getMinutes() + 30);
newDate.setHours(newDate.getHours() + 1);
第一个例子,
var date = new Date();
date.setHours(17);
date.setMinutes(30);
date.setSeconds(0);
var newDate = new Date(date.getTime());
newDate.setSeconds(newDate.getSeconds() + 0);
newDate.setMinutes(newDate.getMinutes() + 30);
newDate.setHours(newDate.getHours() + 1);
新文件
函数getTimeTotal(time1、time2)
{
var time1_hr=“”;
var time1_min=“”;
var time2_hr=“”;
var time2_min=“”;
var total_hrtime=“”;
var total_mintime=“”;
每小时产生的var=0;
time1_hr=time1.split(“:”[0];
time1_min=time1.split(“:”[1];
time2_hr=time2.split(“:”[0];
time2_min=time2.split(“:”[1];
总时长=1*time1\u hr+1*time2\u hr;
警报(总时间);
总时间=1*time1\u min+1*time2\u min;
警报(总分钟时间);
如果(总时间>=60)
{
total_mintime=total_mintime-60;
总时间=总时间+1;
}
如果(总时间>=24)
{
总时间=总时间-24;
如果(总时间<代码>
新文件
函数getTimeTotal(time1、time2)
{
var time1_hr=“”;
var time1_min=“”;
var time2_hr=“”;
var time2_min=“”;
var total_hrtime=“”;
var total_mintime=“”;
每小时产生的var=0;
time1_hr=time1.split(“:”[0];
time1_min=time1.split(“:”[1];
time2_hr=time2.split(“:”[0];
time2_min=time2.split(“:”[1];
总时长=1*time1\u hr+1*time2\u hr;
警报(总时间);
总时间=1*time1\u min+1*time2\u min;
警报(总分钟时间);
如果(总时间>=60)
{
total_mintime=total_mintime-60;
总时间=总时间+1;
}
如果(总时间>=24)
{
总时间=总时间-24;
如果(总时间试试这个
var a = "17.30hrs"
var b = "1.30hrs"
alert(addtime(a,b)); //output: 19.00hrs
var a = "23.00hrs"
var b = "1.30hrs"
alert(addtime(a,b)); //output: 0:30hrs
//Add two times
function addtime(start_time, end_time){
var startArr = start_time.replace('hrs','',start_time).split('.');
var endArr = end_time.replace('hrs','',end_time).split('.');
var d = new Date();
startArr[0] = (startArr[0]) ? parseInt(startArr[0], 10) : 0;
startArr[1] = (startArr[1]) ? parseInt(startArr[1], 10) : 0;
endArr[0] = (endArr[0]) ? parseInt(endArr[0], 10) : 0;
endArr[1] = (endArr[1]) ? parseInt(endArr[1], 10) : 0;
d.setHours(startArr[0] + endArr[0]);
d.setMinutes(startArr[1] + endArr[1]);
var hours = d.getHours();
var minutes = d.getMinutes();
return hours+'.'+minutes+'hrs';
}
演示:试试这个
var a = "17.30hrs"
var b = "1.30hrs"
alert(addtime(a,b)); //output: 19.00hrs
var a = "23.00hrs"
var b = "1.30hrs"
alert(addtime(a,b)); //output: 0:30hrs
//Add two times
function addtime(start_time, end_time){
var startArr = start_time.replace('hrs','',start_time).split('.');
var endArr = end_time.replace('hrs','',end_time).split('.');
var d = new Date();
startArr[0] = (startArr[0]) ? parseInt(startArr[0], 10) : 0;
startArr[1] = (startArr[1]) ? parseInt(startArr[1], 10) : 0;
endArr[0] = (endArr[0]) ? parseInt(endArr[0], 10) : 0;
endArr[1] = (endArr[1]) ? parseInt(endArr[1], 10) : 0;
d.setHours(startArr[0] + endArr[0]);
d.setMinutes(startArr[1] + endArr[1]);
var hours = d.getHours();
var minutes = d.getMinutes();
return hours+'.'+minutes+'hrs';
}
演示:这似乎有效,但前提是你工作时长和分钟长:
var time1 = new Date('','','', 17, 30);
var time2 = new Date('','','', 01, 30);
var hours = time1.getHours() + time2.getHours();
var minutes = time1.getMinuess() + time2.getMinutes();
if ( minutes >= 60 )
{
hours++;
minutes -= 60;
}
if ( hours >= 24 )
{
hours -= 24;
}
console.log ( hours );
console.log ( minutes );
在这里拉小提琴:这似乎有效,但前提是你工作时长时长:
var time1 = new Date('','','', 17, 30);
var time2 = new Date('','','', 01, 30);
var hours = time1.getHours() + time2.getHours();
var minutes = time1.getMinuess() + time2.getMinutes();
if ( minutes >= 60 )
{
hours++;
minutes -= 60;
}
if ( hours >= 24 )
{
hours -= 24;
}
console.log ( hours );
console.log ( minutes );
在这里摆弄:从另一个日期减去一个日期会得到一个整数,而不是另一个日期,因此c.getHours()
将不起作用。@Codemonkey刚刚选中。谢谢。更新。您也可以使用更简单的新日期(0)
用于Unix纪元。从另一个日期减去一个日期会得到一个整数,而不是另一个日期,因此c.getHours()
不起作用。@Codemonkey刚刚选中。谢谢。已更新。您还可以使用更简单的新日期(0)
适用于Unix时代。如果分钟数大于60,则小时数不会更新,如果分钟数大于60,则小时数不会更新