【moment.js】日付を扱うライブラリの便利機能
便利機能メモ
月のショートネームを返却
moment.monthsShort(); // ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] moment.monthsShort(0); // "Jan" // インスタンス生成 let m = moment(); // 現在の月のショートネームを小文字で返却(※実行したのは12月なので"dec") moment.monthsShort(m.month()).toLowerCase(); // "dec"
うるう年の判定
moment([2000]).isLeapYear(); //true moment([2001]).isLeapYear(); //false
インスタンスの複製
let m = moment();
mTmp = moment(m);
日付の加算・減算
let m = moment("2019-12-04"); m.add(1, "M").format("YYYY-MM-DD"); // "2020-01-04" m.subtract(1, "M").format("YYYY-MM-DD"); // "2019-12-04" ↑で2020-01-04となったので
上記は月で指定したが、もちろん年や時間も可能
(指定は表のKeyでもShorthandでも良い)
Key | Shorthand |
---|---|
years | y |
quarters | Q |
months | M |
weeks | w |
days | d |
hours | h |
minutes | m |
seconds | s |
milliseconds | ms |
その他
let m = moment("2019-12-04"); // 月の日数(末日)を取得 m.endOf("M").date(); // 31 // 月の末日の曜日を取得 m.endOf("M").day(); // 2 ([日(0)月(1)火(2)水(3)木(4)金(5)土(6)]) // 逆に月初は startOf() を使う m.startOf("M").date(); // 1 m.startOf("M").day(); // 0 // 月を10月に設定(月の指定は0~11) m.set("M", 10).format("YYYY-MM-DD"); // "2019-11-01"
以上です。