辞書にはカウントアップって言葉がありませんでした。「○○まであと何日!」っていうカウントダウンがあるんだから、「○○から何日経過!」っていうカウントアップがあってもいいよなぁと思ってググったら、結構ありました。けど、多い方に向かって数える意味じゃなくて、ダーツのゲーム種目でした。
JavaScriptでもカウントダウンは結構見るけど、カウントアップは見かけないので探してみたらあったんですが、ソースコードが汚くてよく分かりませんでした;どこかに正しいJavaScriptを解説してるサイトってないのかな。
というわけなので、正しいかどうか分からないですが、カウントダウンのソースを参考にカウントアップするJavaScriptを書いてみました。以下ソースコード。
function countUp(yy, mm, dd, msg) {
var today = new Date();
var n900iDay = new Date(yy, mm - 1, dd);
elapse = (today.getTime() - n900iDay.getTime()) / (1000 * 24 * 60 * 60);
elapse = Math.floor(elapse);
if(elapse > 0) {
document.write(elapse);
document.write(msg);
}
}
countUp(2004, 3, 3, '日');
(1000 * 24 * 60 * 60)でミリ秒を日に計算できたのが嬉しかったです。って言うほどの初心者だけど許して。んでもって以下テスト。
私がDoCoMo N900iを購入して、今日で(この記事を書いた日付(2008/01/04)じゃなくて、今現在の日付から見て)経ちました。
ちゃんと表示されてたら成功!センキウ!