生まれてから何日たったのか

記事そのものがどこだったかは失念したけれど、一万日を記念しよう!みたいな活動があるらしいね。 Facebook だとかに。で、 VBScript で 10000 日目を計算する方法が書かれていたんだけれど、ほら、なんか javascript でもやってみたくならない?

やってみてわかったことは javascript の Date オブジェクトは、日付に整数を足して何日後とか前とか、そういう計算に対応していないってこと。ミリ秒に変換したり、ミリ秒から構築したりができるので、これでなんとかやりくりするようです。

var birthday = new Date("1970/1/1")
WScript.echo(new Date(birthday.getTime() + 24 * 60 * 60 * 1000 * (10000)))

上の内容を date.js に保存したとして Windows コマンドラインから次のように実行すると結果が見られます。

> cscript //nologo date.js

逆に今日で何日生きてきたか、ってのを知りたかったら次のようになりますな。

WScript.echo(((new Date()).getTime() - birthday.getTime()) / 24 / 60 / 60 / 1000)

cscript も、コマンドラインワンライナー入力できればいいのに…!ワンライナーコマンドラインで実行できないスクリプト実行環境とか、死ねばいいのに…!