Javascript:找出2个对象之间的差异并仅返回键

问题描述 投票:-2回答:1

我想找到2个对象的区别,并只获取更新的键并返回它们。

我已使用deep-diffobject-diff npm库。但它不起作用。

我该如何解决?

我只想更改键。无论它们是更新,添加还是删除。

下面是我尝试过的代码。

const diff = require("deep-object-diff").diff;

let oldData = {
  name: 'ABC',
  age: 20,
  marks: [20, 50, 40, 30],
  hobbies: ['playing', 'reading']
}

let newData = {
  name: 'XYZ',
  age: 20,
  marks: [20, 40, 80, 30]
}

console.log(diff(oldData, newData));

所以我想更改像namemarkshobbies之类的键。

任何帮助都会很棒。

谢谢。

javascript object difference
1个回答
0
投票

您可以使用for in语法。

for (let prop in first_obj){
    if(prop !== second_obj){
    return [Object.keys(first_obj),Object.keys(second_obj)]
  }
}

此函数的返回值将是或不确定的-它们相等,或具有两个数组的数组-每个数组-一个对象的键的数组

© www.soinside.com 2019 - 2024. All rights reserved.