【发布时间】:2018-04-12 23:39:54
【问题描述】:
我有一个对象数组,我想更新其中的一些内容。我想我可以只映射对象,找到我正在寻找的匹配项,然后更新它。
data = data.map(obj => {
return this.state.objToFind === obj.title;
}).map(obj, idx) => {
console.log("found " + obj.title); // reads found + undefined?
obj.menu = this.state.menu;
obj.title = this.state.title;
obj.content = this.state.content;
});
但是,这不起作用。我找到了对象,但 obj.anything 未定义。我的 console.log 显示“发现未定义”。
【问题讨论】:
-
那里有 no JSON 对象:learn what JSON really is
-
我不知道你想说什么。数据是 JSON 对象的数组。
-
如果您不明白,请考虑阅读提供的资源。
-
你从函数中返回一个布尔值,所以第二个
map()将处理一个布尔值数组,而不是对象。 -
@user3622460 你想通过写
return this.state.objToFind === obj.title;来实现什么。因为这个条件会返回布尔数组?
标签: javascript json reactjs array-map