在JavaScript 數組中搜尋具有特定屬性值的對象
要確定數組是否包含具有特定屬性值的對象,請考慮利用數組支援高效搜尋的方法。
1.使用 some() 方法:
if (vendors.some((e) => e.Name === 'Magenic')) { // Object found with the matching attribute value }
some() 檢查陣列中是否至少有一個物件符合條件。
2.使用find()方法:
if (vendors.find((e) => e.Name === 'Magenic')) { // Returns the first object with the matching attribute value }
find()傳回找到的對象,如果沒有找到符合則傳回未定義。
3.確定物件的位置:
const i = vendors.findIndex((e) => e.Name === 'Magenic'); if (i > -1) { // Position of the object with the matching attribute value }
findIndex() 傳回第一個符合物件的索引,如果找不到,則傳回 -1。
4.尋找多個符合物件:
if (vendors.filter((e) => e.Name === 'Magenic').length > 0) { // Array of all objects with the matching attribute value }
filter() 傳回一個包含所有滿足條件的物件的新陣列。
5.處理較舊的瀏覽器相容性:
對於不支援箭頭功能的瀏覽器,請使用:
if (vendors.filter(function(e) { return e.Name === 'Magenic'; }).length > 0) { // Array of all objects with the matching attribute value }
以上是如何在 JavaScript 陣列中高效率地尋找具有特定屬性值的物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!