在对象数组中查找具有特定属性的对象
在 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中文网其他相关文章!