數組我有一個數組四號陣列如arr
:排序數量的陣列在Javascript
arr = [
[4, 1, 3, 2, 0],
[4, 2, 1, 3, 0],
[0, 2, 3, 1, 4],
[0, 3, 1, 2, 4]
]
,我需要對它進行排序來獲得:
arr = [
[0, 2, 3, 1, 4],
[0, 3, 1, 2, 4]
[4, 1, 3, 2, 0],
[4, 2, 1, 3, 0],
]
數陣列可要大一些,但是這四個陣列總是有相同的大小。有時需要比數字數組的第一個和第二個元素進行比較以獲得更小的數字。 我在answer中發現了下面的代碼,但它僅限於前兩個數字數組元素。
myArray=myArray.sort(function(a,b){
retVal=0;
if(a[0]!=b[0]) retVal=a[0]>b[0]?1:-1;
else if(a[1]!=b[1]) retVal=a[1]>b[1]?1:-1;
else if(a[2]!=b[2]) retVal=a[2]>b[2]?1:-1;
return retVal
});
EDIT
在輸出中,元素arr[0][0]
和arr[1][0]
比元件arr[2][0]
和arr[3][0]
相等,更小。在第二級中,元素arr[0][1]
小於arr[1][1]
。在某些情況下,有很多層次,我無法預測有多少。
我該如何執行它?
如何第二陣列(輸出)排序?什麼是規則? –
在輸出中,在第一級中,'arr [0] [0]'和'arr [1] [0]'低於'arr [2] [0]'和'arr [3] [0 ]'。在第二級中,'arr [0] [0]'低於'arr [1] [0]'。我會在問題中解釋。 – msampaio