在物件陣列中尋找具有特定屬性的物件
在Javascript 中,可以在未命名物件陣列中搜尋特定屬性基於屬性值匹配的物件。考慮以下數組:
var array = [ { name:"string 1", value:"this", other: "that" }, { name:"string 2", value:"this", other: "that" } ];
查找對象:
要查找屬性“name”設定為“string 1”的對象,請使用 find () 方法。語法為:
let obj = arr.find(o => o.name === 'string 1');
此程式碼迭代數組並傳回條件 o.name === 'string 1' 為 true 的第一個物件。產生的 obj 將包含以下資料:
{ name:"string 1", value:"this", other: "that" }
取代找到的物件:
找到物件後,可以將其替換為編輯後的版本。為此,請使用findIndex() 方法取得陣列中物件的索引:
let index = array.findIndex(o => o.name === 'string 1');
然後,使用陣列的splice() 方法取代該索引處的物件:
array.splice(index, 1, { new_name: "string 1", new_value: "updated" });
現在,陣列將包含更新後的物件:
[ { name:"string 1", value:"updated", other: "that" }, { name:"string 2", value:"this", other: "that" } ]
以上是如何根據特定屬性尋找並取代 JavaScript 陣列中的物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!