Date クラスに直感的な (流れるような) インタフェースを実装してみた (ソースコード)。元ネタはこの一枚。
実行サンプルはこんな感じ。
var d = new Date(); => Wed Apr 30 2008 00:00:00 GMT+0900 (JST) d.tomorrow(); => Thu May 01 2008 00:00:00 GMT+0900 (JST) d.nextTuesday(); => Tue May 06 2008 00:00:00 GMT+0900 (JST)
流れるようなインタフェースなので、このようにも書ける。
d.tomorrow().lastWeek().nextYear().lastSunday().yesterday(); => Sat Apr 18 2009 00:00:00 GMT+0900 (JST)
Google で "(new Date()).next()" を検索したら Datejs という良さそうなライブラリが引っかかった。他にも
が、直感的なインタフェースの参考になる。