『JavaScriptはたまに使う』程度の筆者による、メモ書き程度の内容です。
moment.jsとはJavasSriptで日時計算を楽にしてくれるライブラリーです。
参考文献
公式サイトはmomentjs.comです。
現在時刻を取得する
// モーメントオブジェクトで現在時刻を取得する const d = moment(); // モーメントオブジェクトから日時を配列で読み出す console.log(d.toArray()); // [2020, 6, 5, 15, 34, 24, 0] // モーメントオブジェクトから日時をオブジェクトで読み出す console.log(d.toObject()); // {years: 2020, months: 6, date: 5, hours: 15, minutes: 34, …}
日付の登録
// 日付をセットする①:デフォルト動作 const d = moment('2020-01-09'); // 2020年1月9日で入力される // 日付をセットする②:入力フォーマットを指定する // (※意表を突いたフォーマットですが、指定した通り認識されるはずです。) const d = moment('2020-01-09','YYYY-DD-MM'); // 2020年9月1日で入力される // 日付をセットする③:JavaScriptのDateObjectでセットする // (※Dateオブジェクトの場合はMonthが`0`からスタートします。) const d = moment(new Date(2020,0,9)); // 日付をセットする④:数値(配列)でセットする // (※Dateオブジェクトの場合と同様で、Monthは`0`からスタートになります。) const d = moment([2020,0,9]); // 日付をセットする⑤:モーメントのメソッドを利用する d.set('year',2020); d.month(6); d.date(24); d.hour(20).minute(12).second(34);
日付の変更
- ひとつの要素を変更すると、他の要素も連動して変化します。
- 例えば、モーメントオブジェクトの曜日を'Saturday'から'Sunday'に変更すると、連動して日付もその週の日曜日に変化します。
const d = moment('2020-07-24 15:34:24'); // その週の(日)曜日を取得する(月またぎ、年またぎも問題なく動作しました。) d.day('Sunday');
日付の取得
const d = moment('2020-07-05 15:34:24'); // 年を取得 console.log(d.get('year')); console.log(d.get('years')); console.log(d.get('y')); console.log(d.year()); console.log(d.years()); //Deprecation warning: years accessor is deprecated. Use year instead // 月を取得(0~11) console.log(d.get('month')); console.log(d.get('months')); console.log(d.get('M')); console.log(d.month()); console.log(d.months()); //Deprecation warning: months accessor is deprecated. Use month instead // 日を取得 console.log(d.get('date')); console.log(d.get('dates')); console.log(d.get('D')); console.log(d.date()); console.log(d.dates()); //Deprecation warning: dates accessor is deprecated. Use date instead. // 曜日を取得(0~6) console.log(d.get('day')); console.log(d.get('days')); console.log(d.get('d')); console.log(d.day()); console.log(d.days()); // 時を取得 console.log(d.get('hour')); console.log(d.get('hours')); console.log(d.get('h')); console.log(d.hour()); console.log(d.hours()); // 分を取得 console.log(d.get('minute')); console.log(d.get('minutes')); console.log(d.get('m')); console.log(d.minute()); console.log(d.minutes()); // 秒を取得 console.log(d.get('second')); console.log(d.get('seconds')); console.log(d.get('s')); console.log(d.second()); console.log(d.seconds()); // ミリ秒を取得 console.log(d.get('millisecond')); console.log(d.get('milliseconds')); console.log(d.get('ms')); console.log(d.millisecond()); console.log(d.milliseconds());