javascriptで1日減らす・1月減らす・1年減らす処理

javascriptで日付扱うと毎回悩むからメモ

グリモン作成

グリモン作ってたから外部js使えずに、独自実装で日付扱うことに。
やりたかったのは、

  • 1日減らす
  • 1月減らす
  • 1年減らす

って処理だったので、汎用性は低いけどとりあえず作り始める

    function substOneYear(date) {
        date.setYear(date.getFullYear() - 1);
        return date;
    }
    function substOneMonth(date) {
        if (date.getMonth()) {
            date.setMonth(date.getMonth() - 1);
            return date;
        }
        else {
            date = substOneYear(date);
            date.setMonth(11);
            return date;
        }
    }
    function substOneDay(date) {
        date.setDate(date.getDate() - 1);
        return date;
    }

こんな感じで。
ちょっと雑い。
はずい。


日付を1日の状態で-1すると、自動で前月の月末になるっていうのが便利だった。
これは覚えておこう


明日続きやりたいけど、時間あるかな。