javascript の日付オブジェクトを YYYY/MM/DD hh:mm:ss 形式文字列に変換する
javascript の Date オブジェクトを文字列化すると ctime 形式の文字列に変換されるけれど YYYY/MM/DD hh:mm:ss 形式にしたいこともある。ということで変換処理を書いてみた。
function myDateToString(d) { var ns = ["getYear","getMonth","getDate", "getHours","getMinutes","getSeconds"]; var vs = []; // 値の一時保存用配列 for (var i = 0; i < ns.length; ++i) vs.push(d[ns[i]]()); // 関数を名前で参照して呼び出す vs[1] += 1; // 月は 0 から始まるため 1 足す for (var i = 1; i < vs.length; ++i) { vs[i] = "00" + vs[i]; vs[i] = vs[i].substr(vs[i].length - 2); } return vs.slice(0,3).join("/") + " " + vs.slice(3,6).join(":"); } WScript.echo(myDateToString(new Date("2009/1/1")));
javascript ではオブジェクトのメソッドを名前で参照して () で呼び出すなんてヘンタイ的なことができるのでとても楽しい、気がする。