UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【JavaScript】moment.jsの日付フォーマット内にテキストを含める

この記事の中でmoment.jsを使って年月ローカライズすることを試していた uga-box.hatenablog.com

ベトナム語ローカライズを行う場合、2020年1月は下のようになる

Tháng 1 2020

馴染みがまったくないがThángが「月」にあたるらしい
これをmoment.jsのフォーマットを使って表現すると下のようになる

Tháng M YYYY

と思っていたがこれではダメだった

結果はこれになってしまう

T12áng 1 2020

「T12」ってなんだ?(ってか気づいてよかった)

調べたらT12ベトナム語で「木曜日」という意味だった
つまり、Tháng M YYYYの先頭のThが「木曜日」として変換されてしまったみたい

なので、エスケープをしてあげる必要がある

やり方はテキストを[]で囲ってあげて、
[Tháng] M YYYYにしてあげればよい

参考

javascript - Moment.js Include text in middle of date format - Stack Overflow