2014-10-17 129 views
-1

我需要按字符串的一部分對字符串數組排序。按字符串的部分排序字符串數組

這裏是我的清單:

[ 
    "5,758,ZUMBA,13:00:00", 
    "3,541,Vinyasa level 2/3,10:30:00", 
    "3,559,Mat Pilates,18:30:00" 
] 

我怎樣才能通過第二個值排序呢?我需要的順序是

541, 559, 758 
+0

1)如果是你的企圖? 2)你不能排序JSON。 JSON是一個代表序列化數據的字符串。您必須將JSON解析爲實際的數據結構,並將其解析爲語言/環境/平臺。在解析JSON的地方?如何對數據進行排序的問題的答案取決於您對該問題的回答。 3)誰負責格式化這些數據?如果你只是打算裝滿魔法字符串,那麼使用JSON就沒有多少意義。 – JAAulde 2014-10-17 01:33:05

回答

2

您可以使用自定義排序功能:

var array = ["5,758,ZUMBA,13:00:00","3,541,Vinyasa level 2/3,10:30:00","3,559,Mat Pilates,18:30:00"]; 
 

 
array.sort(function(a, b) { 
 
    
 
    var c = a.split(',')[1]; 
 
    var d = b.split(',')[1]; 
 
    
 
    if (c < d) { 
 
     return -1; 
 
    } 
 
    
 
    if (c > d) { 
 
     return 1; 
 
    } 
 

 
    return 0; 
 
}); 
 

 
console.log(array);

+0

+1做得好。 --Jim – JAAulde 2014-10-17 01:40:49