在混合中使用字符串排序日期数组

时间:2014-05-05 14:12:48

标签: javascript sorting

我有一组这样的字符串:

 "No Value"
 04/08/2014 
 04/16/2014
 04/18/2014
 04/21/2014

我希望它们像我上面那样按升序排序,并实现如下代码:

 data.sort(function(a,b){
    if(a.label === "No Value" || b.label === "No Value") return 1;
    return new Date(a.label) - new Date(b.label);
 });

然而我总是这样回来:

 04/08/2014 
 "No Value"
 04/16/2014
 04/18/2014
 04/21/2014

我在这里做错了什么?似乎很直接。

1 个答案:

答案 0 :(得分:2)

data.sort(function(a,b){
    if(a.label === "No Value")
        return -1;
    else if(b.label === "No Value") 
        return 1;
    else 
        return new Date(a.label) - new Date(b.label);
 });