📌  相关文章
📜  javascript 在数组中查找对象并替换它 - Javascript (1)

📅  最后修改于: 2023-12-03 15:01:42.278000             🧑  作者: Mango

Javascript 在数组中查找对象并替换它

在 Javascript 中,我们可以使用以下方法在数组中查找对象并替换它:

方法一:
var arr = [
  {id: 1, name: "John"},
  {id: 2, name: "Jane"},
  {id: 3, name: "Mike"}
];

for (var i = 0; i < arr.length; i++) {
  if (arr[i].id === 2) {
    arr[i].name = "Chris";
    break;
  }
}

console.log(arr);

这个方法遍历数组中的每个对象,如果找到与特定 id 匹配的对象,则替换它。如上例,将 id 为 2 的对象的 name 属性从 "Jane" 替换为 "Chris"。

方法二:
var arr = [
  {id: 1, name: "John"},
  {id: 2, name: "Jane"},
  {id: 3, name: "Mike"}
];

var obj = arr.find(function(obj) {
  return obj.id === 2;
});

if (obj !== undefined) {
  obj.name = "Chris";
}

console.log(arr);

这个方法使用 Array.find() 方法来查找特定的对象。一旦找到,该对象的属性可以直接更改,然后将整个数组输出。

方法三:
var arr = [
  {id: 1, name: "John"},
  {id: 2, name: "Jane"},
  {id: 3, name: "Mike"}
];

var objIndex = arr.findIndex(function(obj) {
  return obj.id === 2;
});

if (objIndex !== -1) {
  arr[objIndex].name = "Chris";
}

console.log(arr);

这个方法与第二种方法类似,但使用 Array.findIndex() 方法查找对象的索引位置。然后,可以通过该索引位置访问和更改对象的属性。

以上是在 Javascript 中查找和替换数组中对象的三种方法。选择哪种方法取决于您的应用程序和个人喜好。