• ベストアンサー

明日の日にちを表示するときは

下記のように1日後の日付を常に表示するときは どこを変えればいいのでしょうか? <TD>※明日は<script language="JavaScript"> <!-- // 訪問日表示 now = new Date(); year = now.getYear(); if (year < 2000) year = year + 1900; month = now.getMonth()+1; day = now.getDate(); wk = new Array("日","月","火","水","木","金","土"); document.write("有効期限:"+year+"年"+month+"月"+day+"日"); // --> </script>

質問者が選んだベストアンサー

  • ベストアンサー
  • xruz
  • ベストアンサー率50% (72/143)
回答No.4

>たぶんの下記のままでは 2001 1月 1日になるので、そこは変更しないといけませんが たぶんOKだと思いますよ。 now.setDate( now.getDate()+1 ); は年月も自動的にロールしますし、古いブラウザは1900からの差分を返すはずですから。 むしろクライアントのPCのマシン時刻が正確であるという保証がないため、 深夜時間帯に翌々日を表示してしまうほうが心配ですね。

その他の回答 (3)

  • xruz
  • ベストアンサー率50% (72/143)
回答No.3

xruzです、うーんダメです。 >day = now.getDate()+1; では、例えば2001年12月31日の時。 2001年12月32日を表示します(たぶん)。 日付をロールするには now.setDate( now.getDate()+1 ); とDateオブジェクトに翌日をセットしましょう。 それから、年月日の取得を行います。 No.2中の //ここで翌日セットのタイミングです。 がんばってくださいね(~:~i

yuka99
質問者

補足

度々ありがとうございます。 では 下記で挑戦してみます。年明けが楽しみです。 たぶんの下記のままでは 2001 1月 1日になるので、そこは変更しないといけませんが <TD>明日は<script language="JavaScript"> <!-- // 訪問日表示 now = new Date(); now.setDate( now.getDate()+1 ); // ここで翌日セット year = now.getYear(); if (year < 2000) year = year + 1900; month = now.getMonth()+1; day = now.getDate(); wk = new Array("日","月","火","水","木","金","土"); document.write("有効期限:"+year+"年"+month+"月"+day+"日"); // --> </script>

  • xruz
  • ベストアンサー率50% (72/143)
回答No.2

おはようございますさん、xruzです。 翌日セットはnew Date() した後すぐに行いましょう。 年変わりや月変わりの時おかしくなってしまいます。 <TD>明日は<script language="JavaScript"> <!-- // 訪問日表示 now = new Date(); now.setDate( now.getDate()+1 ); // ここで翌日セット year = now.getYear(); if (year < 2000) year = year + 1900; month = now.getMonth()+1; day = now.getDate(); wk = new Array("日","月","火","水","木","金","土"); document.write("有効期限:"+year+"年"+month+"月"+day+"日"); // --> </script> がんばってくださいね(~:~i

yuka99
質問者

補足

さっそくありがとうございます。つまり 下の方の意見も合わせて下記でokですか? <TD>※明日は<script language="JavaScript"> <!-- // 訪問日表示 now = new Date(); year = now.getYear(); if (year < 2000) year = year + 1900; month = now.getMonth()+1; day = now.getDate()+1; wk = new Array("日","月","火","水","木","金","土"); document.write("有効期限:"+year+"年"+month+"月"+day+"日"); // --> </script>

  • zerosix
  • ベストアンサー率31% (47/149)
回答No.1

day = now.getDate(); を day = now.getDate()+1; にすればいいです。

関連するQ&A