- ベストアンサー
時間の表示で・・
JavaScriptで、現在の時間を表示することはできましたが、それとは別に30分後の表示をしようとするとできません。今が45分だとすると75分になってしまいます。 minuteが60になるとhour+1というようにやるのだと思いますがうまくできません。詳しい解説をお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 では、こんな感じでどうでしょう? スクリプト部分のみ書き換えてください。 tt = new Date(); tt30 = new Date(); tt60 = new Date(); tt30.setTime( tt.getTime() + 30 * 60 * 1000 ); tt60.setTime( tt.getTime() + 60 * 60 * 1000 ); document.write( "現在の時刻 " + tt.getHours() + ":" + tt.getMinutes() + "<br>" ); document.write( "30分後の時刻 " + tt30.getHours() + ":" + tt30.getMinutes() + "<br>" ); document.write( "1時間後の時刻 " + tt60.getHours() + ":" + tt60.getMinutes() + "<br>" );
その他の回答 (1)
- ttyp03
- ベストアンサー率28% (277/960)
日付や時間の処理は通算秒を使用して計算するのが一般的です。 <html> <body> <script> // 現在時刻用 tt = new Date(); // 現在時刻+30分用 tt30 = new Date(); // getTime()で現在時刻の秒数を取得し、30分(ミリ秒換算)をプラスしたものをtt30にセットする tt30.setTime( tt.getTime() + 30 * 60 * 1000 ); // 表示 document.write( tt.toLocaleString() + "<br>" ); document.write( tt30.toLocaleString() + "<br>" ); </script> </body> </html> これを参考に自分のプログラムに組み込んでみてください。
お礼
丁寧な回答ありがとうございます! これをコピーしてみたところちゃんと動きました! ただ、初心者のくせにと言われるかもしれませんが、 実行画面に、 現在の時刻 1:50 30分後の時刻 2:20 1時間後の時刻 2:50 という風に表示したいのです…
お礼
できました!ありがとうございます!