2014年9月1日月曜日

JavaScript Date(日付) データを yyyy/MM/dd 形式にフォーマットする


JavaScript の Date 型データはデフォルトでは下記の形式生成されます。

Mon Sep 01 2014 21:42:03 GMT+0900

これを yyyy/MM/dd の形式にフォーマットする場合、下記のように実装することができます。JavaScript の月は 0 からスタートしますので、1 を追加します。

var date = new Date();
var formattedDate = 
    date.getFullYear() + '/' + (date.getMonth() + 1) + '/' + date.getDate();

追記:
コメント欄にてご指摘いただいているように、上の実装ではゼロ埋めがなされません。ゼロを補完して必要な下二桁のみを取るように変更します。

var date = new Date();
formattedDate = [
    date.getFullYear(),
    ('0' + (date.getMonth() + 1)).slice(-2),
    ('0' + date.getDate()).slice(-2)
].join('/');

console.log(formattedDate);

動作サンプルのダウンロードはこちらから
http://kai.raindrop.jp/javascript/format-date/

2 件のコメント:

  1. 月と日に前ゼロつかないんじゃ?

    返信削除
  2. ご指摘ありがとうございます!また、返信が遅くなりすみません。

    確かに上のだと前ゼロがつきませんね。
    前ゼロを付けるなら下記のようにゼロを補完する必要がありますね。

    var date = new Date();
    formattedDate = [
    date.getFullYear(),
    ('0' + (date.getMonth() + 1)).slice(-2),
    ('0' + date.getDate()).slice(-2)
    ].join('/');
    console.log(formattedDate);

    返信削除