js时间转化 js 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /** * 对Date的扩展,将 Date 转化为指定格式的String * 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) 可以用 1-2 个占位符 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) * eg: * (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S")==> 2006-07-02 08:09:04.423 * (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04 * (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04 * (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04 * (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18 */ Date.prototype.pattern=function(fmt) { var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时 "H+" : this.getHours(), //小时 "m+" : this.getMinutes(), //分 "s+" : this.getSeconds(), //秒 "q+" : Math.floor((this.getMonth()+3)/3), //季度 "S" : this.getMilliseconds() //毫秒 }; var week = { "0" : "/u65e5", "1" : "/u4e00", "2" : "/u4e8c", "3" : "/u4e09", "4" : "/u56db", "5" : "/u4e94", "6" : "/u516d" }; if(/(y+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); } if(/(E+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]); } for(var k in o){ if(new RegExp("("+ k +")").test(fmt)){ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length))); } } return fmt; } /* 调用 */ var s=7.000000000000e+03;var normalFormat=new Date(s).pattern('hh:mm:ss');alert(normalFormat);//08:00:07alert(normalFormat.replace(/\:/g,'-'));//08-00-07 看楼主需求和日期不挂钩,所以 , 1. 秒转毫秒2. 取小时分并转格式 处理前置0 3. 输出<html> <head> <title>Time Convert</title> <script language='JavaScript'> var d = new Date() var milsec = 7.000000000000e+03 * 1000; d.setTime(milsec); var hour = d.getHours() < 10 ? "0"+d.getHours() : d.getHours(); var min =d.getMinutes() < 10 ? "0"+d.getMinutes() : d.getMinutes(); var sec =d.getSeconds() < 10 ? "0"+d.getSeconds() : d.getSeconds(); alert(hour + ":"+min + ":" + sec); </script> </head> <body> </body></html> /** +----------------------------------------- * @desc JS版 date 函数(原php) * @param String format 格式 * @param int timestamp 时间 默认当前时间 * @return string 格式化后的时间字符串 +----------------------------------------- */ function date(format,timestamp){ var a,jsdate = (timestamp) ? new Date(timestamp*1000) : new Date(); //前导0 var pad = function(n,c){ if((n=n+'').length<c){ return new Array(++c - n.length).join('0')+n; }else{ return n; } } var f = { d: function(){ return pad(f.j(),2);}, j: function(){ return jsdate.getDate();}, m: function(){ return pad(f.n(),2);}, n: function(){ return jsdate.getMonth()+1;}, Y: function(){ return jsdate.getFullYear();}, H: function(){ return pad(jsdate.getHours(),2);}, i: function(){ return pad(jsdate.getMinutes(),2);}, s: function(){ return pad(jsdate.getSeconds(),2);} }; return format.replace(/[\\]?([a-zA-Z])/g,function(t,s){ if(t!=s){ ret = s; }else if(f[s]){ ret = f[s](); }else{ ret = s; } return ret; }); } alert(date("H:s",7.000000000000e+03));//9:40 </script> alert(date("H:m:s",7.000000000000e+03));//9:01:40 关于scripts集合! 关于在button中的onclick事件调用写在页面中的JS函数的问题 firefox6中的alert窗口为什么这么暗的,而且还不能拖动? javascript的var 有木有都没有关系是不是? javascript题目 Aptana Studio 2.0.4 Eclipse Plugin的下载地址 在网页上怎么才能让ppt只能打开不能下载? 有个小问题帮忙看一下,谢 提问一简单问题,等! showModalDialog刷新问题 求大虾帮帮新手,jquery改变节点内容 关于form 提交请求了两次的问题
可以用 1-2 个占位符 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) * eg: * (new
Date()).pattern("yyyy-MM-dd hh:mm:ss.S")==> 2006-07-02 08:09:04.423
* (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04
* (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04
* (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04
* (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
*/
Date.prototype.pattern=function(fmt) {
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时
"H+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
var week = {
"0" : "/u65e5",
"1" : "/u4e00",
"2" : "/u4e8c",
"3" : "/u4e09",
"4" : "/u56db",
"5" : "/u4e94",
"6" : "/u516d"
};
if(/(y+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
if(/(E+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]);
}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
} /* 调用 */
var s=7.000000000000e+03;
var normalFormat=new Date(s).pattern('hh:mm:ss');
alert(normalFormat);//08:00:07alert(normalFormat.replace(/\:/g,'-'));//08-00-07
所以 , 1. 秒转毫秒
2. 取小时分并转格式 处理前置0
3. 输出<html>
<head>
<title>Time Convert</title>
<script language='JavaScript'>
var d = new Date()
var milsec = 7.000000000000e+03 * 1000;
d.setTime(milsec);
var hour = d.getHours() < 10 ? "0"+d.getHours() : d.getHours();
var min =d.getMinutes() < 10 ? "0"+d.getMinutes() : d.getMinutes();
var sec =d.getSeconds() < 10 ? "0"+d.getSeconds() : d.getSeconds();
alert(hour + ":"+min + ":" + sec);
</script>
</head>
<body>
</body>
</html>
/**
+-----------------------------------------
* @desc JS版 date 函数(原php)
* @param String format 格式
* @param int timestamp 时间 默认当前时间
* @return string 格式化后的时间字符串
+-----------------------------------------
*/
function date(format,timestamp){
var a,jsdate = (timestamp) ? new Date(timestamp*1000) : new Date();
//前导0
var pad = function(n,c){
if((n=n+'').length<c){
return new Array(++c - n.length).join('0')+n;
}else{
return n;
}
}
var f = {
d: function(){ return pad(f.j(),2);},
j: function(){ return jsdate.getDate();},
m: function(){ return pad(f.n(),2);},
n: function(){ return jsdate.getMonth()+1;},
Y: function(){ return jsdate.getFullYear();},
H: function(){ return pad(jsdate.getHours(),2);},
i: function(){ return pad(jsdate.getMinutes(),2);},
s: function(){ return pad(jsdate.getSeconds(),2);}
};
return format.replace(/[\\]?([a-zA-Z])/g,function(t,s){
if(t!=s){
ret = s;
}else if(f[s]){
ret = f[s]();
}else{
ret = s;
}
return ret;
});
}
alert(date("H:s",7.000000000000e+03));//9:40
</script>