JavaScript: 日付の計算はDateオブジェクトが便利

スポンサーリンク

JavaScript: で日付の計算をする時は、Dataオブジェクトを使うと便利です。 例えば、3ヶ月前、10日前、1年前の日付も簡単に取得できます。

3ヶ月前の日付を取得

DateオブジェクトのsetMonth()メソッドを使って取得します。


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 3ヶ月前
dt.setMonth(dt.getMonth()-3)
console.log(dt.toLocaleDateString());    // 2017/2/8

3ヶ月後の日付を取得

先程とは逆に、-3を+3にすればいいだけです。


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 3ヶ月後
dt.setMonth(dt.getMonth()+3)
console.log(dt.toLocaleDateString());    // 2017/8/8

10日前の日付を取得

DateオブジェクトのsetDate()メソッドを使って取得します。


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 10日前
dt.setDate(dt.getDate()-10)
console.log(dt.toLocaleDateString());    // 2017/4/28

10日後の日付を取得


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 10日後
dt.setDate(dt.getDate()+10)
console.log(dt.toLocaleDateString());    // 2017/5/18

1年前の日付を取得

DateオブジェクトのsetFullYear()メソッドを使って取得します。


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 1年前
dt.setFullYear(dt.getFullYear()-1)
console.log(dt.toLocaleDateString());    // 2016/5/8

1年後の日付を取得


var dt = new Date();
console.log(dt.toLocaleDateString());   // 2017/5/8

// 1年後
dt.setFullYear(dt.getFullYear()+1)
console.log(dt.toLocaleDateString());    // 2018/5/8

ツール・書籍紹介

まとめ・一覧

基本編

数値

文字列

正規表現

日付・時刻

配列

関数

オブジェクト指向

DOM操作

API

便利な小技集

用語

実践編

関連サイト