0

Dateオブジェクトの時間と分を取得してメッセージを表示するにはどうすればよいですか? 時刻が午後 9 時から午前 12 時までの場合は「休業中」と表示し、それ以外の場合は「営業中」と表示します。

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

4 に答える 4

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');
}
于 2012-12-11T16:13:35.617 に答える
2

todayは であるDateため、その機能を使用できます。あなたの場合、開いたメッセージを表示today.getHours()するかどうかを使用して確認>= 12します。< 21閉じられたメッセージは、else.

これはクライアントの時間を使用することに注意してください。したがって、これを世界中の Web ページで使用している場合、ヨーロッパでは開いているが、同時に米国では閉じている可能性があります。

于 2012-12-11T16:09:40.253 に答える
1

以下を使用して、日付から分と時間を取得できます。

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

次の条件を使用して var h を比較し、目的の結果を取得します。

if(h>= 12 && h<= 21)
于 2012-12-11T16:10:40.260 に答える
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");
}

基本的に時間を整数に変換し、比較を容易にします(したがって、読みやすく、管理しやすいわけではありません)

于 2012-12-11T16:13:52.020 に答える