2010-12-07 32 views

回答

2

用一個簡單的排序回調

var arr = [[1,5,2],[1,8,2],[1,2,2]]; 

console.log(arr); 

arr.sort(function(a, b) 
{ 
    // Sort by the 2nd value in each array 
    if (a[1] == b[1]) return 0; 
    return a[1] < b[1] ? -1 : 1; 
}); 

console.log(arr); 

Array.sort()方法考慮到這兩個元件被傳遞的回調。這是一個基本的冒泡排序

  • 如果a是能夠提前b排序,返回-1(或任何負值)
  • 如果b要提前a排序,返回1(或任何正值)
  • 如果ab相等,則返回0;
+0

謝謝彼得,我很感謝快速回復。 – thepip3r 2010-12-08 12:28:10