情報アイランド

「情報を制する者は世界を制す」をモットーに様々な情報を提供することを目指すブログです。現在はプログラミング関連情報が多めですが、投資関連情報も取り扱っていきたいです。

Node.jsでdateformatを使って日時をフォーマットする

2016/03/21

日時をフォーマットするには幾つかの方法があります。

この記事ではdateformatパッケージのdateformatモジュールのdateformat関数を使用する方法を取り上げます。

dateformat(new Date(), 'yyyy/mm/dd HH:MM:ss');

第1引数に組み込みの日時クラスであるDateクラスのインスタンスを指定します。

第2引数にフォーマットを指定します。

返り値として日時がフォーマットされた文字列が得られます。

主なフォーマット指定文字列には下のようなものがあります。

  • d・・・短い日(0埋めしない)。
  • dd・・・長い日(0埋めする)。
  • ddd・・・短い曜日名(3文字の略称)。
  • dddd・・・長い曜日名(完全な名称)。
  • m・・・短い月(0埋めしない)。
  • mm・・・長い月(0埋めする)。
  • mmm・・・短い月名(3文字の略称)。
  • mmmm・・・長い月名(完全な名称)。
  • yy・・・短い年(2桁の西暦年)。
  • yyyy・・・長い年(4桁の西暦年)。
  • h・・・短い12時間制の時(0埋めしない)。
  • hh・・・長い12時間制の時(0埋めする)。
  • H・・・短い24時間制の時(0埋めしない)。
  • HH・・・長い24時間制の時(0埋めする)。
  • M・・・短い分(0埋めしない)。
  • MM・・・長い分(0埋めする)。
  • s・・・短い秒(0埋めしない)。
  • ss・・・長い秒(0埋めする)。
  • l・・・長いミリ秒(3桁)。
  • L・・・短いミリ秒(2桁)。
  • t・・・短い小文字の午前か午後か(午前の場合a、午後の場合p)。
  • tt・・・長い小文字の午前か午後か(午前の場合am、午後の場合pm)。
  • t・・・短い大文字の午前か午後か(午前の場合A、午後の場合P)。
  • t・・・長い大文字の午前か午後か(午前の場合AM、午後の場合PM)。

また、予め定義されているフォーマットの名称を指定することもできます。

  • default・・・ddd mmm dd yyyy HH:MM:ss
  • shortDate・・・m/d/yy
  • mediumDate・・・mmm d, yyyy
  • longDate・・・mmmm d, yyyy
  • fullDate・・・dddd, mmmm d, yyyy
  • shortTime・・・h:MM TT
  • mediumTime・・・h:MM:ss TT
  • longTime・・・h:MM:ss TT Z
  • isoDate・・・yyyy-mm-dd
  • isoTime・・・HH:MM:ss
  • isoDateTime・・・yyyy-mm-dd'T'HH:MM:ss
  • isoUtcDateTime・・・UTC:yyyy-mm-dd'T'HH:MM:ss'Z'

サンプルコード1

様々なフォーマットの使用例です。

dateformat.js

var dateformat = require('dateformat');

var now = new Date();
console.log(dateformat(now, 'yyyy年mm月dd日 HH時MM分ss秒'));
console.log(dateformat(now, 'yy年m月d日 H時M分s秒'));
console.log(dateformat(now));
console.log(dateformat(now, 'shortDate'));
console.log(dateformat(now, 'mediumDate'));
console.log(dateformat(now, 'longDate'));
console.log(dateformat(now, 'fullDate'));
console.log(dateformat(now, 'isoDate'));

使用パッケージ

  • dateformat
    npm install dateformatでインストールします。

実行結果

C:\work\node>node dateformat.js
2016年03月20日 15時44分26秒
16年3月20日 15時44分26秒
Sun Mar 20 2016 15:44:26
3/20/16
Mar 20, 2016
March 20, 2016
Sunday, March 20, 2016
2016-03-20

関連

pizyumi
プログラミング歴19年のベテランプログラマー。業務システム全般何でも作れます。現在はWeb系の技術を勉強中。
スポンサーリンク

-Node.js