OCN光で最大124,800円おトク!

ホームページ制作でJavascriptを使っています。
ホームページ閲覧者のコンピュータ内部の時計を利用したJavascriptなのですが、
日付の表示でお聞きしたいことがあります。

以下のプログラムは、2003-11-07のような表示をするようなJavascriptを組んでいるのですが、
0時00分から0時59分までは前日の日付を表示するJavascriptにしたいのです。
この場合、どのようにすればよいのでしょうか?
よろしくお願いします

============================================================

<SCRIPT language=JavaScript>
<!--
xx = new Date();
yy = xx.getYear();
mm = xx.getMonth() + 1;
dd = xx.getDate();

if ( yy < 2000 ) { yy += 1900; }
if ( mm < 10 ) { mm = "0" + mm; }
if ( dd < 10 ) { dd = "0" + dd; }
document.write( yy + "-" + mm + "-" + dd );

// -->
</SCRIPT>

A 回答 (1件)

if 文以下の3行を追加して下さい。


一日戻すことで、月・年が変わる場合でもちゃんと追随します。
先頭の‘//’を削除して動作確認してみて下さい。


<script language="JavaScript">
<!--
xx = new Date();

//1月1日午前0時に設定して動作確認
//xx.setMonth(1 - 1);
//xx.setDate(1);
//xx.setHours(0);

if (xx.getHours() == 0) {
xx.setDate( xx.getDate() - 1 );
}

yy = xx.getYear();
mm = xx.getMonth() + 1;
dd = xx.getDate();

if ( yy < 2000 ) { yy += 1900; }
if ( mm < 10 ) { mm = "0" + mm; }
if ( dd < 10 ) { dd = "0" + dd; }
document.write( yy + "-" + mm + "-" + dd );

//-->
</script>
    • good
    • 0
この回答へのお礼

ありがとうございました。
おかげで上手くできました。

お礼日時:2003/11/07 17:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング