zoukankan      html  css  js  c++  java
  • 也写dateUtil.js

    yl.dateUtil = {
        /**
         *  y   年
         *  M   月
         *  d   日
         *  H   时            h   时(am/pm)
         *  m   分
         *  s   秒
         *  S   毫秒
         *  a   上午/下午(am/pm)
         *  setInterval(function(){
         *     input111.value = yl.dateUtil.dateStr(new Date(), "要一个给小于9的d数m字s前H面M加0返回字符串的方法yyyy");
         *  }, 1000);
         */
        dateStr: function (date, str) {
            if (!date instanceof Date) {
                return str;
            }
            //match之后得到数组
            //遍历数组,
            //判断各个元素长度、内容,做对应替换
            var reg = /yyyy|yy|MM|M|dd|d|HH|H|h|mm|m|ss|s|SSS|S|a/g;
            var strArr = str.match(reg);
            for (var i = 0, len = strArr.length; i < len; i++) {
                //console.log(strArr[i]);
                switch (strArr[i]) {
                    case "yyyy":
                        str = str.replace(/yyyy/, date.getFullYear());
                        break;
                    case "yy":
                        str = str.replace(/yy/, (date.getFullYear()+"").substr(2,2));
                        break;
                    case "MM":
                        str = str.replace(/MM/, this.getLe9Str(date.getMonth()+1));
                        break;
                    case "M":
                        str = str.replace(/M/, date.getMonth()+1);
                        break;
                    case "dd":
                        str = str.replace(/dd/, this.getLe9Str(date.getDate()));
                        break;
                    case "d":
                        str = str.replace(/d/, date.getDate());
                        break;
                    case "HH":
                        str = str.replace(/HH/, this.getLe9Str(date.getHours()));
                        break;
                    case "H":
                        str = str.replace(/H/, date.getHours());
                        break;
                    case "h":
                        var s = date.getHours();
                        str = str.replace(/h/, s > 12 ? s % 12 : s);
                        break;
                    case "mm":
                        str = str.replace(/mm/, this.getLe9Str(date.getMinutes()));
                        break;
                    case "m":
                        str = str.replace(/m/, date.getMinutes());
                        break;
                    case "ss":
                        str = str.replace(/ss/, this.getLe9Str(date.getSeconds()));
                        break;
                    case "s":
                        str = str.replace(/s/, date.getSeconds());
                        break;
                    case "SSS":
                        str = str.replace(/SSS/, this.getLe99Str(date.getMilliseconds()));
                        break;
                    case "S":
                        str = str.replace(/S/, date.getMilliseconds());
                        break;
                    case "a":
                        str = str.replace(/a/, date.getHours() > 12 ? "pm" : "am");
                        break;
                }
            }
            //console.log(str);
            return str;
        },
        strDate: function () {
    
        },
        //要一个给小于9的数字前面加0返回字符串的方法
        getLe9Str: function (num) {
            return num > 9 ? "" + num : "0" + num;
        },
        //小于100前面加00或者0
        getLe99Str: function (num) {
            if (num > 9 && num < 100) {
                return "0"+num;
            } else {
                return this.getLe9Str(num);
            }
        }
    };
    

    调用

    <body>
        <input type="text" id="input111" style="500px;"/>
    <script type="text/javascript" src="ylUtil.js"></script>
    
    <script type="text/javascript">
    
    var input111 = document.getElementById("input111");
    setInterval(function(){
        input111.value = yl.dateUtil.dateStr(new Date(), "a h:mm:ss`SSS~~~~yyyy年M月d日");
        }, 1);
    </script>
    </body>
    

    ps:

    1. 觉得js用new Date("2013/08/01 11:20:00")的方式还是挺好的。所以strDate没写了。
    2. dateStr方法用到参数格式从java的simpleDateFormat里面取的。所以与它的是一致的。
    3. 用来把个日期转成指定字符串个人觉得够用了,关于性能问题,欢迎各路大虾提点。
    4. http://www.cnblogs.com/nimeiz/p/3446292.html
  • 相关阅读:
    【Android Developers Training】 73. 布局变化的动画
    【Android Developers Training】 72. 缩放一个视图
    【Android Developers Training】 71. 显示翻牌动画
    svn更改地址怎么办
    python学习手册
    failed to bind pixmap to texture
    Ubuntu 12.04安装Google Chrome
    svn update 时总是提示 Password for '默认密钥' GNOME keyring: 输入密码
    重设SVN 的GNOME keyring [(null)] 的密码
    Nginx + uWSGI + web.py 搭建示例
  • 原文地址:https://www.cnblogs.com/nimeiz/p/3446292.html
Copyright © 2011-2022 走看看