JS對多維陣列排序

2021-08-11 09:46:44 字數 510 閱讀 3862

現有data陣列如下:

var data = [[1,2,2],[3,3,1],[2,1,3]];
對data陣列按照陣列第三維數值進行排序

data.sort(function

(x,y));

其實是陣列依次將陣列元素複製給x,y,比如首先將data[0]賦給x,data[1]賦給y,然後用x[0] – y[0],根據返回的值,

如果返回的是大於0的數,那麼就把陣列中x放到y的後面,

如果返回的是0則不變,

如果小於0則將x放到y的前面,

然後第乙個排序好之後在進行下面兩個的排序,直到整個陣列排序完成。

這是預設公升序的比較函式,如果要降序排列則只需修改比較方式,改為 return y[0] – x[0] 即可,

這裡我們x[0]表示是按第一列進行排序,我們這裡也可以按其他列進行排序。這裡的排序預設就會修改arr的陣列結構,所以排序完arr就是按第一列公升序的陣列了。

php對多維陣列進行排序

data id 13,name arthur dent id 22,name ford prefect id 5,name trillian astra 對多維陣列進行排序,就是這麼簡單!沒錯,就上面一句話就解決問題了!try catch pdoexception e sql select comp...

js 多維陣列去重排序

定義乙個陣列 let arr 1,2,3 7,0,5 6,9,8 輸出結果 console.log new set arr.flat infinity sort 0,1,2,3,5,6,7,8,9 用於將巢狀的陣列 拉平 變成一維的陣列。該方法返回乙個新陣列,對原資料沒有影響。如果不管有多少層巢狀,...

js 多維陣列長度 js多維陣列

方法一 直接定義並且初始化,這種遇到數量少的情況可以用 var thearray 0 1 0 2 1 1 1 2 2 1 2 2 方法二 未知長度的二維陣列 var tarray new array 先宣告一維 for var k 0 k tarray k new array 宣告二維,每乙個一維陣...