如何使用 JavaScript 中的键值创建两个对象中的第三个对象?
假设,我们有这样的两个对象 −
const obj1 = { positive: ['happy', 'excited', 'joyful'], negative: ['depressed', 'sad', 'unhappy'] }; const obj2 = { happy: 6, excited: 1, unhappy: 3 };
我们需要编写一个 JavaScript 函数,该函数接收这两个对象。然后,函数应该使用这两个对象来计算正分和负分,然后返回一个如下所示的对象 −
const output = {positive: 7, negative: 3};
示例
用于此目的的代码如下 −
const obj1 = { positive: ['happy', 'excited', 'joyful'], negative: ['depressed', 'sad', 'unhappy'] }; const obj2 = { happy: 6, excited: 1, unhappy: 3 }; const findPositiveNegative = (obj1 = {}, obj2 = {}) => { const result ={} for (let key of Object.keys(obj1)) { result[key] = obj1[key].reduce((acc, value) => { return acc + (obj2[value] || 0); }, 0) }; return result; }; console.log(findPositiveNegative(obj1, obj2));
输出
控制台中的输出将如下 −
{ positive: 7, negative: 3 }
广告