码迷,mamicode.com
首页 > 其他好文 > 详细

日期格式化方法

时间:2017-06-29 12:00:26      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:charset   ons   ret   默认   eof   ack   cas   方法   code   

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
       
        <script>
            
            
            //格式化时间 
            
            //参数一 字符串yyyy全年|yy两位年|mm两位月|m月|dd两位天|d天|hh两位时|h时|ii两位分|i分|ss两位秒|s秒|w星期大写(一二三四五六日)
            //参数二  Date对象或者time,不传默认为当天
            //formatDate("yyyy年m月d日hh:ii:ss 星期w") 返回2017年6月29日11:21:29 星期四
            function formatDate(formatStr,time){
                //
                var type=typeof time
                console.log(type)
                if(time==undefined){
                    var date=new Date();
                }else if(type==number || type=="string"){
                    if(isNaN(time)){
                        throw("传入的参数正确,应该是日期类型对象或者time或者time的字符串")
                        return
                    }else{
                        var date=new Date(parseInt(time))
                    }    
                }else if(type=="object" && time instanceof Date){
                    var date=time
                }else{
                    throw("传入的参数正确,应该是日期类型对象或者time或者time的字符串")
                    return
                }
                
                var tf=function(val){
                    return parseInt(val)<10 && val.toString().length==1 ? 0+val : val
                }
                return formatStr.replace(/yyyy|yy|mm|m|dd|d|hh|h|ii|i|ss|s|w/g,function(a){
                    switch(a){
                        case yyyy://2001
                            return date.getFullYear().toString();
                            break;
                        case yy://01
                            return date.getFullYear().toString().substring(2);
                            break;
                        case mm://06
                            return tf((date.getMonth()+1).toString());
                            break;
                        case m://6
                            return (date.getMonth()+1).toString();
                            break;
                        case dd://06
                            return tf(date.getDate().toString());
                            break;
                        case d://6
                            return date.getDate().toString();
                            break;
                        case hh://06
                            return tf(date.getHours().toString());
                            break;
                        case h://6
                            return date.getHours().toString();
                            break;
                        case ii://06
                            return tf(date.getMinutes().toString());
                            break;
                        case i://6
                            return date.getMinutes().toString();
                            break;
                        case ss://06
                            return tf(date.getSeconds().toString());
                            break;
                        case s://6
                            return date.getSeconds().toString();
                            break;
                        case w://
                            switch(parseInt(date.getDay())){
                                case 0:
                                    return ;
                                    break;
                                case 1:
                                    return ;
                                    break;
                                case 2:
                                    return ;
                                    break;
                                case 3:
                                    return ;
                                    break;
                                case 4:
                                    return ;
                                    break;
                                case 5:
                                    return ;
                                    break;
                                case 6:
                                    return ;
                                    break;
                            }
                            break;
                    }    
                })    
            }
            </script>
    </body>
</html>

 

日期格式化方法

标签:charset   ons   ret   默认   eof   ack   cas   方法   code   

原文地址:http://www.cnblogs.com/ywyxyx/p/7093659.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!