みかづきブログ・カスタム

基本的にはちょちょいのほいです。

Intl.DateTimeFormatを使って月を英語表記にする 📅

f:id:kimizuka:20211127143516p:plain

最近、(new Date).getMonth()の結果を英語にする機会がありまして、愚直に、

[
  'January',
  'February',
  'March',
  'April',
  'May',
  'June',
  'July',
  'August',
  'September',
  'October',
  'November',
  'December'
][(new Date).getMonth()];

的なコードを書いたんですが、JavaScriptが目覚ましい進化を遂げる昨今、組み込み関数に用意されていないわけがないと思い調べてみると、Intl.DateTimeFormatたるものを見つけました。

developer.mozilla.org

これを使えば、上記コードを、

new Intl.DateTimeFormat('en', { month: 'long'}).format(new Date);

というように書き換えることができます。

ちなみに、

new Intl.DateTimeFormat('en', { month: 'short'}).format(new Date);

とすればアルファベット3文字表記で返ってきます。非常に便利です。