2009-02-02 48 views

回答

1

每個瀏覽器都有不同的實現,所以不要依靠它

0

我相信它取決於s就是你在數組中排序的對象的類型。您可以爲array.sort()提供「排序函數」來確定排序特定對象的規則。例如,考慮功能:

function sortInt(a, b){ 
    if (a < b) 
    return -1; 
    else if (a == b) 
    return 0; 
    else if (a > b) 
    return 1; 
} 

所以這顯然是人爲的,但你可以應用此相同類型的想法來即「可比」的任何對象。根據a小於,等於或大於b(恭敬地),您將始終返回-1,0或1。

你會然後說:array.sort(sortInt);

警告:

原諒我,如果語法因爲我沒有手頭上有一個例子是不完美的。我也不確定從跨瀏覽器的角度來看Array.sort()的穩定性。

編輯:固定的僞代碼片段

+0

函數sortInt(a,b){return(a> b) - (a some 2009-02-03 04:20:47

0

所有的主流瀏覽器有穩定的排序算法,並格式化(因爲有一些愚蠢的代碼在那裏),他們可以處理不一致的比較功能。

相關問題