我正在尝试根据它们都具有的共享属性来组合两个数组。我怎么能在 react 中做到这一点?我想将它们组合起来创建一个包含复选框以及所有其他项目的数组。
这里有两个示例数组:
const array1 = [
{Handle: "handle1", title: "handle1"},
{Handle: "handle2", title: "handle2"},
{Handle: "handle3", title: "handle3"} ]
const array2 = [
{Handle: "handle1", checkbox: true},
{Handle: "handle2", checkbox: false},
{Handle: "handle3", checkbox: true} ]
结果:
const array2 = [
{Handle: "handle1", checkbox: true, title:"handle1"},
{Handle: "handle2", checkbox: false, title:"handle2"},
{Handle: "handle3", checkbox: true, title:"handle3"} ]
我如何以这样一种方式组合它们,以便获得一个新数组,该数组在正确的位置包含句柄、标题和复选框?
最佳答案
这样的事情可能会起作用,不确定数据会随着您要合并的对象名称而改变多少。
const array1 = [
{Handle: "handle1", title: "handle1"},
{Handle: "handle2", title: "handle2"},
{Handle: "handle3", title: "handle3"} ]
const array2 = [
{Handle: "handle1", checkbox: true},
{Handle: "handle2", checkbox: false},
{Handle: "handle3", checkbox: true} ]
const newArr = array1.map(v => {
let obj = array2.find(o => o.Handle === v.Handle)
if(obj) {
v.checkbox = obj.checkbox
}
return v
})
console.log(newArr)
关于javascript - 我如何组合两个数组以使用react以获得一个包含前两个数组中所有项目的新数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72364005/