js中物件屬性值排序(字典倒排序)

2021-07-10 15:09:39 字數 903 閱讀 7017

教女朋友前端js的過程中發現好多書裡面都沒有講倒排序,網上搜了也沒有,故此新開一文講一下。

先說一下sort函式:

var a=[3,2,5,7,3,6,8,9,1,2];

document.writeln(a.sort());

結果即是對a順序排序;

逆序排序兩種方法,第一種:

document.writeln(a.sort().reverse());
第二種,檢視sort方法介紹:

裡面包含乙個函式可選引數,這個引數有兩個形參a,b,返回結果大於0說明a大於b,小於0則相反,等於0則相等。預設排序方式對應的函式即:

function

(a,b)

因此逆序可以這樣:

document.writeln(a.sort(function

(a,b));

先來看乙個簡單的字典按鍵排序**:

var dic=;//輸出  

var sdic=object.keys(dic).sort();

for(ki in sdic)

上面利用object.keys方法提取物件裡面的所有屬性(鍵),並預設排序後輸出。要寫乙個按值排序,也就是說上面例子輸出 ,也就是提取的鍵陣列應該是[『z』,』x』,』y』],應自定義sort函式,如下:

var dic=;//輸出   

var sdic=object.keys(dic).sort(function

(a,b));

for(ki in sdic)

js中物件陣列按物件屬性排序

let arr 陣列元素通過指定屬性進行比較 param property 屬性名稱 param sorttype 排序方式,預設為公升序 asc 排列 example 使用時傳入 array.sort 方法中 arr.sort arraycompare commentid arr.sort arr...

巢狀字典按字典值排序

這裡有一組關於各省各市上市公司數量的巢狀字典資料,我想實現按各省上市公司數量排序?資料如下 lsd 甘肅 吉林 江蘇 北京 山西 湖北 河南 貴州 四川 重慶 內蒙古 浙江 福建 廣西 上海 河北 廣東 天津 湖南 遼寧 江西 陝西 黑龍江 雲南 海南 安徽 寧夏 新疆 青海 如下 匿名函式中,按照...

js 陣列物件 排序相同的屬性

有時候我們需要把相同的引數放一起,比如下面陣列物件中,我們需要把spec相同的引數放一起怎麼做呢?localecompare是什麼東西?定義 用本地特定的順序來比較兩個字串。語法 stringobject.localecompare target 引數 target 要以本地特定的順序與 strin...