使用Javascript计算两个日期/时间字符串之间的小时数(YYYY-mm-dd HH:MM:SS)

时间:2016-05-10 02:05:40

标签: javascript date datetime dhtmlx

我有以下格式的两个时间戳:

Start Time  - 2016-01-01 00:00:00 
Finish Time - 2016-01-02 23:15:00

我需要计算正确到两位小数的两个日期时间之间的小时数。

我需要结果采用以下格式

Hrs = 47.25

这将是23小时和.25小时而不是25分钟,我不需要舍入到最接近的15我只需要舍入到小数点后两位。

非常感谢任何帮助。然后将该数据插回到DHTMLX网格中的单元格中。

最终解决方案

adminGrid.attachEvent("onEditCell",function(stage,rId,cInd,nValue,oValue){
                if ((cInd == colStartTime || cInd == colFinishTime) && stage == 2) {
                    var startTime = new Date(adminGrid.cells(rId,colStartTime).getValue());
                    var finishTime = new Date(adminGrid.cells(rId,colFinishTime).getValue());
                    var Hrs = ((finishTime - startTime)/1000/60/60).toFixed(2);
                    adminGrid.cells(rId,colHrs).setValue(Hrs);                      
                }
                return true;
            });

2 个答案:

答案 0 :(得分:2)

var startDate = new Date('2016-01-01 00:00:00');
var endDate = new Date('2016-01-02 23:15:00');
var time = endDate - startDate;
console.log(time/1000/60/60%24); //23.25
像这样可以计算小时跨度。

答案 1 :(得分:1)

var date1 = new Date("2016-01-01 00:00:00");
var date2 = new Date("2016-01-02 23:15:00");

var diff = date2.getTime() - date1.getTime();

var Hrs = diff / (1000 * 60 * 60);

console.log(Hrs);//It's 47.25.

我已经尝试过了47.25。

相关问题