我正在尝试比较两个对象并返回更改后的值的键。
const a = {
email: 'john@doe.nl',
first_name: 'john',
last_name: 'doe',
};
const b = {
email: 'peter@doe.nl',
first_name: 'peter',
last_name: 'doe',
};
现在我有:
Object.entries(user).reduce((key, val) => {
// Got the key and val
// Compare the second object against the key/val?
});
预期: 更改为:电子邮件和名字
答案 0 :(得分:1)
您可以尝试使用//hs-api.js
const results = await request(options);
// don`t sure, that it is correct error indicator for your library
if(result.error) {
throw new Error(// describe error here);
}
const res = JSON.parse(response.body);
all = all.concat(res.results);
if(res.hasOwnProperty("paging")) {
return await getReq(`${res.paging.next.link}&apikey=${settings.api_key}`)
} else {
console.log(all);
return all;
}
:
filter
这假设Object.keys(a).filter( key => a[key] !== b[key] )
和a
具有相同的键。 b
中的所有新键都会显示为已更改。
答案 1 :(得分:0)
您可以遍历一个对象,并检查第二个对象中的键是否具有相同的值
const a = {
email: 'john@doe.nl',
first_name: 'john',
last_name: 'doe',
};
const b = {
email: 'peter@doe.nl',
first_name: 'peter',
last_name: 'doe',
};
for (let keys in a) {
if (b[keys] && a[keys] !== b[keys]) {
console.log(keys)
}
}