gpt4 book ai didi

javascript - 如何查找和更新对象数组中的值?

转载 作者:IT王子 更新时间:2023-10-29 02:47:50 26 4
gpt4 key购买 nike

我有一个对象数组。我想通过某个字段查找,然后更改它:

var item = {...}
var items = [{id:2}, {id:2}, {id:2}];

var foundItem = items.find(x => x.id == item.id);
foundItem = item;

我想让它改变原来的对象。如何? (我不在乎它是否也会在 Lodash 中。)

最佳答案

您可以使用 findIndex在对象数组中查找索引并根据需要替换它:

var item = {...}
var items = [{id:2}, {id:2}, {id:2}];

var foundIndex = items.findIndex(x => x.id == item.id);
items[foundIndex] = item;

这假定唯一 ID。如果您的 ID 重复(如您的示例所示),使用 forEach 可能会更好:

items.forEach((element, index) => {
if(element.id === item.id) {
items[index] = item;
}
});

关于javascript - 如何查找和更新对象数组中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35206125/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com