使用js Date Object将给定日期转换为所需的日期格式 - 性能?

时间:2013-07-13 00:37:36

标签: javascript performance

今天我为js - date编写了一个通用的日期转换器。

现在,在我将这个方法添加到我自己的lib中的日期对象之前,我希望得到一些提示,使这个方法尽可能高效。

描述: 参数'initVal'是给定的有效日期 参数'format'是所需的dateformat as String,例如'd.m.Y'

对于'格式'我正在使用来自php http://www.php.net/manual/en/function.date.php

的日期参数

有几个问题,我不确定,例如:

是最适合选择的开关吗? 避免在每次迭代中使用jquery-routines会更好吗? 还有吗?有没有nogos?

thx很多为你的建议!

var getWellDate = function(initVal, format){
    var dateObj = new Date(initVal);
    var strArr = format.split('');
    var returnVal = '';
    var tempVal = '';

    $.each(strArr, function (index, value) {
        switch (value){
            case 'd' : // day with leading zero
            case 'j' :
                tempVal = dateObj.getDate();
                returnVal += tempVal < 10 && value == 'd' ? '0' + tempVal : tempVal;
                break;
            case 'm' : // month with leading zero
            case 'n' :
                var tempVal = dateObj.getMonth() + 1;
                returnVal += tempVal < 10 && value == 'm' ? '0' + tempVal : tempVal;
                break;
            case 'Y' : // year 4 digits
            case 'y' : // year 2 digits
                tempVal = dateObj.getFullYear();
                returnVal += value == 'Y' ? tempVal : tempVal.match(/\d{2}$/);
                break;
            default :
                returnVal += value;
        }
    });

    return returnVal;
}

也许这个功能对其他人也很有用。 ive存储在bitbucked中 - 只是asc用于链接

1 个答案:

答案 0 :(得分:1)

我肯定会查看众所周知的日期处理程序库如何进行日期格式化。例子: