Javascript で YY/MM/DD 形式の文字列をシリアル値に変換して計算する機会がありました。そこで利用した関数が parse 関数です。parse 関数は YY/MM/DD 形式を引数として渡すとシリアル値を返します。
下記のコードは2010年5月15日のシリアル値をアラートで出力します。
1 2 3 4 5 |
<script type="text/javascript"> var n = Date.parse("2010/05/15"); alert(n); </script> |
今日が5月15日から何日経過しているのかを出力する場合は今日のシリアル値との差分を求めることで経過日数を算出できます。
1 2 3 4 5 6 7 8 |
<script type="text/javascript"> var n = Date.parse("2010/05/15"); var m = new Date(); var x =(m - n)/1000/60/60/24; x = Math.floor(x); alert(x); </script> |
シリアル値の単位はミリ秒なので日単位に変換する必要があります。最後に小数点以下を切り捨てて表示させれば経過日数になります。