[英]Simplify javascript object creation using ES6 destructuring
有沒有一種方法可以通過使用分解來簡化用戶對象的更新,其中我有一個舊對象,並且我想更新為具有相同名稱的新對象。
我想使用相同的用戶對象並更新值,而不是創建一個新對象。
function UpdateUserProps(user, updatedUser) {
const { email, status } = updatedUser;
user.email = email;
user.status = status;
return user;
}
您可以在對象中使用擴展語法...
這將創建一個新對象。
function UpdateUserProps(user, updatedUser) { return {...user, ...updatedUser} }
您還可以使用參數解構從更新對象獲取特定屬性。
function UpdateUserProps(user, {email, status}) { return {...user, ...{email, status}} } let user = { name: "foo", email: "foo", status: true } console.log(UpdateUserProps(user, { email: "bar", status: false }))
您也可以使用Object.assign
來完成,而無需破壞結構
function updateUserProps(user, updatedUser) {
return Object.assign({}, user, updatedUser);
}
如果要在同一用戶對象中更新
function updateUserProps(user, updatedUser) {
return Object.assign(user, updatedUser);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.