javascript检查时间和显示消息

时间:2012-12-11 16:07:59

标签: javascript conditional-statements

如何检索Date对象的小时和分钟,然后显示消息?如果时间是晚上9点到12点之间,我想显示“我们已关闭”,否则我想显示“我们已经开放”。

<script language="javascript"> 
<!-- 
    today = new Date();
    document.write('<BR>We are Open');
//--> 
</script> 

4 个答案:

答案 0 :(得分:2)

todayDate,因此您可以使用其功能。在您的情况下,请使用today.getHours()并检查是否>= 12< 21来显示已打开的消息。已关闭的消息可以显示在else

请注意,这会占用客户的时间,因此如果您在全球的网页上使用此功能,那么您可能会在欧洲开设,但同时在美国关闭。

答案 1 :(得分:2)

我不确定我的“时间逻辑”是否正确(请查看if语句),但这应该是您正在寻找的。

var objDate = new Date();
var hours = objDate.getHours();
if(hours >= 12 && hours <= 21){
    document.write('We Are Closed');
}
else{
    document.write('We are Open');
}

答案 2 :(得分:1)

您可以使用以下日期从日期获得分钟和小时数:

var d = new Date();
    var m = d.getMinutes();
    var h = d.getHours();

使用以下条件比较您的var h并获得所需的结果:

if(h>= 12 && h<= 21)

答案 3 :(得分:0)

我通常使用这种解决方案,我只是为了知识发布(pimvdb的回答确实更清楚)

var d = new Date();
var currtime = d.getHours() * 100 + d.getMinutes();

// now your currtime looks like 530 if it's 5.30am, or 1730 if it's 5.30 pm
// you can just do a simple comparison between ints

if (currtime > 2000 and currtime < 800){
    // closed between 20:00 (8 pm) and 8:00 (8 am) as an example
    alert("We are closed");
}

你基本上把你的时间转换成一个整数,使比较更容易(因此不那么可读和可持续)