![](/img/trans.png)
[英]Update object property in nested array using Javascript or Lodash
[英]Update a Single Field of Object in Object Array in Javascript/Lodash
有没有办法更新对象数组中对象的单个字段?
PeopleList= [
{id:1, name:"Mary", active:false},
{id:2, name:"John", active:false},
{id:3, name:"Ben", active:true}]
例如,将John的active设置为true。
我试图在Lodash中这样做,但它没有返回正确的结果。 它返回一个lodash包装器。
updatedList = _.chain(PeopleList)
.find({name:"John"})
.merge({active: true});
嗯,你甚至不需要lodash
与es6:
PeopleList.find(people => people.name === "John").active = true;
//if the record might not exist, then
const john = PeopleList.find(people => people.name === "John")
if(john){
john.active = true;
}
或者,如果您不想改变原始列表
const newList = PeopleList.map(people => {
if(people.name === "John") {
return {...people, active: true};
}
return {...people};
});
_.find(PeopleList, { name: 'John' }).active = true
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.