2008年05月27日

指定日まであと何日?指定日から今日まで何日経った?

スポンサード リンク

北京オリンピック開催日  
2008/8/8

サンプルソース

<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<body>
<h3 style="font-weight : bold;color : blue;">北京オリンピック開催日&nbsp;&nbsp;
<DIV id="hizuke" style="font-weight : bold;color : purple; display: inline;">2008/8/8</DIV></h3>
<p>
<script type="text/javascript">
<!--
//基準になる日を設定
inputDay = document.getElementById("hizuke").innerHTML; //id名が"hizuke"の文字列(2008/8/8)を代入
var hairetu = inputDay.split("/");
var nowday = new Date(); //今日の日付
var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日
var countday = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24));

if(countday > 0)document.write("<font color=#ff00ff size=5>オリンピック開催まであと "+countday +"日です.</font>");
else if (countday == 0)document.write("<font color=#ff00ff size=5>本日 "+ inputDay +"が開催日です.</font>");
else document.write("<font color=#ff00ff size=5>開催日から "+countday*(-1)+"日が経ちました.</font>");

//-->
</script>

</body></HTML>

2008/8/8:この日付を変更することで指定日まであと何日?指定日から今日まで何日経った?を算出できます。
inputDay.split("/") :文字列オブジェクトの splitメソッドです。引数の文字"/"で文字列 inputDay 2008/8/8 を分け、配列を作ります。
 hairetu[0]には 2008 ,hairetu[1]には 8 ,hairetu[2] には8, が入っています。
getTime( ) メソッド :1970年1月1日0時0分0秒0ミリ秒からの経過ミリ秒を返します。

 xday.getTime() - nowday.getTime() : 現在から xdayまでの通算ミリ秒です。
(1000 * 60 * 60 * 24) :(1000ミリ秒 * 60秒 * 60分 * 24時間)で一日のミリ秒は 8,6400,000ミリ秒になります。
Math.ceil() メソッド :数値または式を切り上げた値を返します。Math.ceil(14.6) この例では15を返します。

if(countday > 0)document.write:countday の条件によって分岐し document.writeで結果を書き出します。

タグ:日付
posted by javaScript at 14:28 | 大阪 | 日付 時刻 時計 | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。