假设我们有两个这样定义的对象-
const obj1 = { id1: 21, name1: "Kailash" }; const obj2 = { id2: 20, name2: "Shankar" };
我们需要编写一个JavaScript函数,该函数接受两个这样的对象并合并为一个对象。
换句话说,我们需要或多或少地实现Object.assign()函数的功能。
为此的代码将是-
const obj1 = { id1: 21, name1: "Kailash" }; const obj2 = { id2: 20, name2: "Shankar" }; const concatObjects = (...sources) => { const target = {}; sources.forEach(el => { Object.keys(el).forEach(key => { target[key] = el[key]; }); }); return target; } console.log(concatObjects(obj1, obj2));
输出结果
控制台中的输出将是-
{ id1: 21, name1: 'Kailash', id2: 20, name2: 'Shankar' }
问题内容: 我厌倦了总是不得不编写这样的代码: 或者,如果我不想自己编写代码,请实现一个已经执行过的库。ES6 +肯定会在这方面获救,这将为我们提供类似a 或 那么ES6 +是否提供这种功能?如果尚不存在,那么是否计划了此类功能?如果没有计划,那为什么不呢? 问题答案: 您将可以通过使用Object.assign在ES6中进行浅合并/扩展/分配: 句法: Object.assign( target
问题内容: 我正在寻找“添加”多个JavaScript对象(关联数组)的最佳方法。 例如,给定: 什么是最好的计算方式: 问题答案: 引入ECMAscript 6是为了用Javascript本身实现此目的。 所述 Object.assign() 方法被用于所有可枚举自己的属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 在许多现代浏览器中都受支持,但并非所有浏览器都支持。使用Babel
问题内容: 我有一个对象数组: 如何通过JavaScript将其转换为以下内容? 问题答案: 您可能正在寻找这样的东西:
问题内容: 我有两个具有相同结构的JSON对象,我想使用Javascript将它们连接在一起。是否有捷径可寻? 问题答案: 根据注释中的描述,您只需执行一个数组concat:
问题内容: 如何遍历JavaScript对象中的所有成员,包括对象值。 例如,如何循环浏览(分别访问“ your_name”和“ your_message”)? 问题答案:
问题内容: 我有两个对象数组。我想基于PermissionObj过滤数据。 这是即将形成的数据库。这是permissionObj中的子数组的数组。 这是静态数据。我想比较基于PermissionObj的数据。 我正在尝试基于 对象 的 PermissionObj数组 过滤 对象 的 数据数组 。这是我尝试的代码。 如果PermissionObj值将与data值匹配。然后显示数据。 我接受的输出将是