物件陣列通過物件的屬性進行排序

2022-06-06 20:15:19 字數 962 閱讀 2431

最常見的對陣列進行排序,可以用sort()方法,按照陣列中元素的首字母或者數字大小進行排序

var arr = [2,

5,13,

7,4,

9,1];

var arr1 = arr.

sort

(); console.

log(arr);

// [1, 13, 2, 4, 5, 7, 9]

console.

log(arr1);

// [1, 13, 2, 4, 5, 7, 9]

sort()方法會改變原來的陣列,並且sort方法並不是嚴格按照數字大小排序的。 

如果想對陣列按照大小進行排序,則需要在sort()方法新增比較函式

vararr = [2,

5,13,

7,4,

9,1];

arr.sort(

function

(a,b))

console.log(arr);

// [1, 2, 4, 5, 7, 9, 13]

那麼可不可以利用sort方法對物件陣列按照物件屬性進行排序呢?

答案是可以的 

像上面對陣列按照大小排序,指定比較函式一樣,只是此時比較的是物件的屬性 

上**:對下列物件陣列,按照age排序

varinfoobj=[

,

, ];

// 指定排序的比較函式

function

compare

(property)

} var

sortobj = infoobj.sort(compare(

"age"

));

console.log(sortobj);

//

JS中物件陣列按照物件的某個屬性進行排序

js中的陣列中的物件排序很簡單,根據物件的屬性指定排序規則即可,如果出問題就仔細檢查一下中間資料 functon sortrule a,b 可以在原陣列排序函式的基礎上再套乙個函式來傳欄位引數,原排序函式作為這個函式的返回值返回 function sortby props arr1.sort sor...

JavaScript 物件陣列排序 物件屬性

1.陣列排序 從小到大 function sortby a,b arr.sort sortby 2.物件陣列排序 按照陣列物件中某個屬性值進行排序 var arrobj function compare key arrobj.sort compare age 根據age排序 如果還需要在 age 的...

c 根據物件的屬性進行排序

使用list容器提供的sort icomparercomparer 方法,實現物件根據某個屬性進行排序。說明如下 1 自定義類person class person 2 建立時間比較器 時間比較器 class timecomparer icomparer icomparer是泛型介面,引數使用我們用...