Dateちょっと便利に拡張
Date.prototype.format = function(){ function z2d(n){//名前適当。1ケタの場合 10の位に 0 を表示 return (n < 10) ? '0'+n : n; } var y = (this.getYear() < 2000 ? this.getYear() + 1900 : this.getYear()); var m = z2d(this.getMonth()+1); var d = z2d(this.getDate()); var h = z2d(this.getHours()); var mi = z2d(this.getMinutes()); var s = z2d(this.getSeconds()); return [[y,m,d].join('/'),[h,mi,s].join(':')].join(' ') } Date.prototype.at = function(time){ var p = {}; time.replace(/^(?d{1,2}):?(?d{1,2})?:?(?d{1,2})?$/,function(m,$1,$2,$3){ p.hours = $1-0 || 0; p.minutes = $2-0 || 0; p.seconds = $3-0 || 0; }) var h = this.getHours(); var mi = this.getMinutes(); var s = this.getSeconds(); var diff = (s - p.seconds) + (mi - p.minutes) * 60 + (h - p.hours) * 3600; this.setTime(this.getTime() - diff * 1000) return this; } var from_perl = 1173970264;// perlでのtime値。単位は秒 var d = new Date().setTime(from_perl * 1000) //Javascriptではミリ秒を使う alert(d.format()); alert(new Date().at("12").format()); // 12 o'clock alert(new Date().at('1:25:70').format()); //1:26:10
ってtohoho見たらsetHours,setMinutes,setSecondsあるって書いてる、、、orz
ま、いいや。