gpt4 book ai didi

javascript - 将另一个数组作为属性放入另一个数组失败

转载 作者:行者123 更新时间:2023-11-29 10:31:09 24 4
gpt4 key购买 nike

尝试使用 es6 的传播,但不太正确

const arr1 = [{
gap: 10
}, {
gap: 20
}, {
gap: 30
}]
const arr2 = [{
english: null
}, {
france: null
}]

如何生成一个新数组,arr2 的属性成为 arr1 的一部分?

来自 jsfiddle:

    //expected new_arr to be
/*[{
gap: 10,
english: null,
france: null
}, {
gap: 20,
english: null,
france: null
}, {
gap: 30,
english: null,
france: null
}]*/

失败的尝试 https://jsfiddle.net/swu94gd5/

最佳答案

你想要

const arr1 = [{
gap: 10
}, {
gap: 20
}, {
gap: 30
}]
const arr2 = [{
english: null
}, {
france: null
}]

const new_arr = arr1.map(obj => Object.assign({}, obj, ...arr2));

console.log(new_arr);

注意:

我原来有

const new_arr = arr1.map(obj => Object.assign(obj, ...arr2));

但更改 arr1[0].gap 将更改 new_arr[0].gap - 片段中的代码修复了该问题

再评论你能解释一下你头脑中对象分配的定义吗?

我脑子里没有定义

我使用文档中的定义

The Object.assign() method is used to copy the values of all enumerable own properties from one or more source objects to a target object. It will return the target object.

Object.assign(target, ...sources)

MDN source

关于javascript - 将另一个数组作为属性放入另一个数组失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45748851/

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