我只想分配那些已經存在于目標物件中的鍵,而不是由 object.assign 方法完成的其他鍵。
example
a = { x: 2}
b = {x:3, y:4}
then result = {x:3}
我知道過去還有其他方法,但有沒有更新更好的方法來做到這一點?
uj5u.com熱心網友回復:
您可以target通過從obj存在的值中獲取值來將物件的鍵減少為新物件:
const fn = (target, obj) => Object.keys(target)
.reduce((acc, key) => key in obj
? { ...acc, [key]: obj[key] }
: acc
, {})
const a = { x: 2}
const b = { x:3, y:4 }
const result = fn(a, b)
console.log(result)
uj5u.com熱心網友回復:
我認為最快的方法是:
for (let key in b) {
if (a[key] === undefined) {
delete b[key];
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/384535.html
標籤:javascript 目的 ecmascript-6 反应还原 分配
上一篇:深度連接兩個物件
