使用解构更新对象键

raj*_*aju 0 javascript

我正在尝试使用像这样的解构来更新对象键

let user = {
    name: "raju",
    age: 40,
    sex: "male"
}

name = "vvvv"

user1 = {name, ...user}

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

但它没有name == 'vvvv'更新user1

我很困惑,需要一些帮助。

Cer*_*nce 5

后面的属性名称将覆盖前面的属性名称。就像name下面的重复项一样,最后一个被包含在对象中:

console.log({
  name: 'foo',
  name: 'bar'
});
Run Code Online (Sandbox Code Playgroud)

使用扩展语法时,您应该将要覆盖其他属性的属性放在最后

user1 = {...user, name}
Run Code Online (Sandbox Code Playgroud)