首頁  >  文章  >  web前端  >  如何依屬性名稱對 JavaScript 物件陣列進行排序?

如何依屬性名稱對 JavaScript 物件陣列進行排序?

Linda Hamilton
Linda Hamilton原創
2024-10-23 10:54:17597瀏覽

How to Sort an Array of JavaScript Objects by Attribute Name?

使用 JavaScript 依屬性名稱對物件陣列進行排序

在 JavaScript 中,可以依照特定屬性對物件陣列進行排序。當處理複雜的資料結構時,這個過程就變得必要了。

問題:

如何依屬性的升序對物件陣列進行排序(例如,「名稱」)?

答案:

要根據屬性名稱對物件陣列進行排序,可以定義自訂比較函數並將其傳遞給sort() 方法。以下是一個範例:

// Custom comparison function
function SortByName(a, b){
  var aName = a.name.toLowerCase();
  var bName = b.name.toLowerCase(); 
  return ((aName < bName) ? -1 : ((aName > bName) ? 1 : 0));
}

// Sort the array
array.sort(SortByName);

在此範例中,SortByName 函數比較陣列中每兩個物件(a 和 b)的「name」屬性的小寫版本。如果結果小於0,則將物件a放在物件b之前,如果大於0,則將b放在a之前,如果為0,則順序保持不變。

透過傳遞此函數進行排序(),陣列依照「name」屬性的升序排序。小寫比較確保不同大小寫的名稱得到同等對待。

以上是如何依屬性名稱對 JavaScript 物件陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn