解决方案 »

  1.   

    /** * 对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
      

  2.   

    看楼主需求和日期不挂钩,
    所以 , 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>
      

  3.   


    /**
     +-----------------------------------------
     * @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>
      

  4.   

    alert(date("H:m:s",7.000000000000e+03));//9:01:40