如何用另一个对象的匹配键值替换对象键

UXC*_*ODA 5 javascript arrays object

我有一个对象:

{pm: 'val 1', dm: 'val 2', cm: 'val 3'}

我想遍历此过程并检查另一个对象中是否存在任何键,

如果是,则用另一个对象的匹配键值替换键。

{pm: 'price', dm: 'discount', cm: 'cost'}

预期的输出将是:

{price: 'val 1', discount: 'val 2', cost: 'val 3'

Cod*_*iac 3

您可以使用reduce,检查另一个对象中的键是否存在,然后将值添加为anotherObj最终对象中的键

let obj = {pm: 'val 1', dm: 'val 2', cm: 'val 3', 'xy':'val 4'}
let anotherObj = {pm: 'price', dm: 'discount', cm: 'cost'}

let final = Object.entries(obj).reduce((op, [key,value]) => {
  let newKey = anotherObj[key]
  op[newKey || key ] = value
  return op
},{})

console.log(final)
Run Code Online (Sandbox Code Playgroud)