とりあえずY,m,d,H,i,sだけ使いたかったので、適当に実装してみた。 もっと綺麗な方法はいくらでもあるとおもう。
Date.prototype.format = function(formatStr) { var d=this, a = { Y:d.getFullYear, m:function(){return ('0'+(d.getMonth()+1)).slice(-2);}, d:function(){return ('0'+d.getDate()).slice(-2);}, H:function(){return ('0'+d.getHours()).slice(-2);}, i:function(){return ('0'+d.getMinutes()).slice(-2);}, s:function(){return ('0'+d.getSeconds()).slice(-2);} }; return formatStr.replace(/[YmdHis]/g, function(l) {return a[l].apply(d);}); };
使用例は次のようなかんじ
new Date('2013-1-28 9:30:28').format('Y/m/d H-i-s'); // "2013/01/28 09-30-28"