在 table 中排序日期

Sort date in table

我想将字符串转换为 Javascript 中的日期。我需要这样做,因为我有一个数组并从中创建 table。之后我想使用 Tablesorter。但它只像文本字段一样对它进行排序。我试图创建新的解析器。我有这样的字符串:

"02 January 2010"

我需要从中创建日期类型。 Javascript 可以吗?我试过了

DateFormat format = new SimpleDateFormat("dd MMMM yyyy", Locale.ENGLISH);
Date date = format.parse(s);

但是没用。我该怎么做?

使用标准日期格式,您可以创建一个不需要重新格式化日期的日期解析器(demo)

$(function () {

    $.tablesorter.addParser({
        id: 'ddMMMMyyyy',
        is: function() {
            return false;
        },
        format: function(s) {
            var date = new Date(s);
            return date instanceof Date && isFinite(date) ? date.getTime() : s;
        },
        type: 'numeric'
    });

    $('table').tablesorter({
        headers : {
            5: { sorter: 'ddMMMMyyyy' }
        }
    });

});