如何在Javascript中减去对象内的小时数

时间:2017-02-25 21:45:46

标签: javascript

我需要计算两个日期之间的工作时间。我设置了两个日期。

    var startDate = new Date("2/25/2017 20:30");
    var endDate = new Date ("3/28/2017 20:58");

我设置了像工作开始和工作结束的对象。

var monday = {"start":"09:00", "end":"17:00"};
var tuesday = {"start":"09:00", "end":"17:00"};
var wednesday = {"start":"09:00", "end":"17:00"};
var thursday = {"start":"09:00", "end":"17:00"};
var friday = {"start":"08:00", "end":"13:00"};
var saturday = {"start":"08:00", "end":"11:00"};
var sunday = {"start":"08:00", "end":"09:00"};

然后我将所有对象放在数组中:

 var workDays = [monday, tuesday, wednesday, thursday, friday, saturday, sunday];

我不知道如何减去每天的小时数。例如,星期一:17:00-9:00 = 8小时。

我试过了:

var mondayStart = monday.start;
var mondayEnd= monday.end;

在控制台中,我得到星期一对象的正确开始和结束时间,但我有减法问题。

var mondayDifference = mondayEnd - mondayStart;

console.log(mondayDifference);

但是,在控制台中我得到:NaN(不是数字)。

我会感激任何提示或帮助。

1 个答案:

答案 0 :(得分:1)

如果您不仅获得真实案例POC,parseInt就足以获得差异

var mondayDifference = parseInt(monday.end) - parseInt(monday.start);
                       // "17:00" will be 17     ..so on