如何一起添加2个日期/时间?

时间:2011-07-25 08:29:49

标签: javascript

我必须用另一个添加当前时间。

例如,现在的时间是10:30 on 21st July 2011

我想今天在17:00预订车辆,但10:30 + $minHours < 17:00这意味着我无法预订。

这是我的代码:

var d = new Date();
var curr_day = d.getDay();
var curr_date = d.getDate();
var hours = d.getHours();
var minutes = d.getMinutes();
var curr_month = d.getMonth();
var curr_year = d.getFullYear();

a = d_names[curr_day] + ', ' 
    + curr_date + ' ' 
    + m_names[curr_month] + ' ' 
    + curr_year;

t1 = document.getElementById('min_hr');

if(a == e.value) 
{
    alert("please call reservation to make a booking for collection in the next 24 hours");
    return false;
} 
else 
{
    return true;
}

3 个答案:

答案 0 :(得分:1)

试试这个。

d.setMinutes ( d.getMinutes() + 30 );

检查此处Date实例Date - MDN Docs的属性,尤其是那里的getter和setter。

如果您想设置小时数

//An integer between 0 and 23, representing the hour
d.setHours ( d.getHours() + 2 );

方法的签名是

setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])

您的确切要求的代码就是这个。

var $maxHour = 17; //5 PM
var $minHours = 3;
var $hourNow = new Date().getHours();
if( ( $minHours + $hourNow ) > $maxHour ){
    alert("Time is up.");
}
else{
    alert("Please book now");
}

答案 1 :(得分:0)

你只需要制作一个新对象。 在上方,请参阅var d = new Date();撰写d.getDay();

现在您创建一个新对象:var d2 = new Date(/* something in here */);并通过d2.getDay();

引用它

这是你问题的答案吗?

编辑。现在您可以在日期中添加任何小时:

var d = new Date();
var d2 = new Date();
d2.setHours(d.getHours() + 2);

答案 2 :(得分:0)

  • 有一个日期对象。
  • 将要添加的时间转换为 分钟数(或秒数)。
  • 将日期对象的分钟(秒)设置为原始值+步骤2中计算的值。