javascriptでY/m/d H:i:sを表示

javascriptで現在の日付・時刻をY/m/d H:i:s形式で表示する

phpだと関数1つで終わりだが、javascriptだと以外とめんどくさい。
かつ、ぐぐって出てくるサンプルが0埋めされてなかったりと、完全じゃないので、備忘録としてここにメモしておく。

javascriptだとsprintfとかもなくて0埋めもめんどくさいんだよね....。
0埋めはsubstrかsliceを使う

function getDateString(microtime){
  var d       = new Date();
  var year    = d.getFullYear();
  var month   = d.getMonth() + 1;
  var day     = d.getDate();
  var hours   = d.getHours();
  var minutes = d.getMinutes();
  var seconds = d.getSeconds();
  var dateStr =
    year + "/" + 
    ("0"+month  ).slice(-2) + "/" + 
    ("0"+day    ).slice(-2) + " " + 
    ("0"+hours  ).slice(-2) + ":" + 
    ("0"+minutes).slice(-2) + ":" + 
    ("0"+seconds).slice(-2);
  return dateStr;
}

document.write(getDateString());

自分のプロジェクトとかではめんどくさいので、DateオブジェクトのtoStringを上書いちゃってます。
ライブラリとかで使っている可能性があるので、使用は自己責任で

Date.prototype.toString = function (){
  var year    = this.getFullYear();
  var month   = this.getMonth() + 1;
  var day     = this.getDate();
  var hours   = this.getHours();
  var minutes = this.getMinutes();
  var seconds = this.getSeconds();
  var dateStr =
    year + "/" + 
    ("0"+month  ).slice(-2) + "/" + 
    ("0"+day    ).slice(-2) + " " + 
    ("0"+hours  ).slice(-2) + ":" + 
    ("0"+minutes).slice(-2) + ":" + 
    ("0"+seconds).slice(-2);
  return dateStr;
}

(new Date())
2015/12/18 10:23:25
 Date()

の方は何故か上書きできない