現在時刻に6時間加算してページに表示する

そこで、グラフにラベルを付けたいのですが、横軸の6時間、12時間、18時間、24時間にラベルを付けたいのですが、どうしたらよいでしょうか?

これらの時間をローカル(コンピュータ)のタイムゾーンの "hh:mm"フォーマット(例えば23:10, 05:10, 11:10, 17:10) で書きたいのですが。

どなたか教えてください。

ソリューション

をもとに、https://stackoverflow.com/questions/1197928/how-to-add-30-minutes-to-a-javascript-date-object

var d1 = new Date ();
var d2 = new Date ( d1 );
d2.setHours ( d1.getHours() + 6 );

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date では、Date オブジェクトを操作する方法を紹介します。

を追加し、いくつか修正した。 2番目のdocument.writeを追加するように編集しました。

<script type="text/javascript"> 
var timer = 24; 
var d1 = new Date(); 
var d2 = new Date();
d1.setHours(+d2.getHours()+(timer/4) ); 
d1.setMinutes(new Date().getMinutes()); 
document.write(d1.toTimeString("hh:mm"));
document.write(d1.getHours()+":"+d1.getMinutes());
</script>
解説 (5)

やってみる

var today = new Date();
alert(today);
today.setHours(today.getHours()+6);
alert(today);
today.setHours(today.getHours()+6);
alert(today);
today.setHours(today.getHours()+6);
alert(today);
today.setHours(today.getHours()+6);
alert(today);
解説 (3)
var MILLISECS_PER_HOUR = 60 /* min/hour */ * 60 /* sec/min */ * 1000 /* ms/s */;

function sixHoursLater(d) {
  return new Date(+d + 6*MILLISECS_PER_HOUR);
}

日付の数値はエポックごとのミリ秒なので、それにミリ秒を足せば更新された数値になります。

プレフィックス演算子 + は、日付を数値に変換する。

解説 (0)