js 使用find修改数组对象中符合条件的属性
时间: 2024-03-24 17:36:45 浏览: 16
可以使用 `Array.prototype.find()` 方法找到符合条件的数组元素,然后对其属性进行修改。例如:
```javascript
const arr = [
{ id: 1, name: 'Alice', age: 20 },
{ id: 2, name: 'Bob', age: 25 },
{ id: 3, name: 'Charlie', age: 30 }
];
const target = arr.find(item => item.id === 2); // 找到 id 为 2 的元素
if (target) {
target.age = 26; // 修改 age 属性
}
console.log(arr);
// 输出:[
// { id: 1, name: 'Alice', age: 20 },
// { id: 2, name: 'Bob', age: 26 }, // age 属性已被修改
// { id: 3, name: 'Charlie', age: 30 }
// ]
```
在这个例子中,我们使用 `Array.prototype.find()` 方法找到 `id` 属性为 2 的数组元素,并将其赋值给 `target` 变量。然后,我们检查 `target` 是否存在,如果存在,则对其 `age` 属性进行修改。
需要注意的是,如果没有符合条件的元素,`Array.prototype.find()` 方法会返回 `undefined`,因此在进行属性修改前需要先检查 `target` 是否存在。