Javascript 分解对象并指定给一行中的另一个对象
有没有一种方法可以在一行中完成以下操作Javascript 分解对象并指定给一行中的另一个对象,javascript,javascript-objects,Javascript,Javascript Objects,有没有一种方法可以在一行中完成以下操作 让person={} 常量{firstName,lastName}=getNames() //还是这个 //const{firstName,lastName}=wait getNames() person.firstName=firstName person.lastName=lastName 我经常在编码时这样做,希望有一条捷径。我看不到任何关于如何在计算机上执行此操作的提示 我尝试了下面的方法,但是,它覆盖了对象中的其他属性 let person={
让person={}
常量{firstName,lastName}=getNames()
//还是这个
//const{firstName,lastName}=wait getNames()
person.firstName=firstName
person.lastName=lastName
我经常在编码时这样做,希望有一条捷径。我看不到任何关于如何在计算机上执行此操作的提示
我尝试了下面的方法,但是,它覆盖了对象中的其他属性
let person={age:20}
person={…getNames()}
我认为这也不能很好地用于异步/等待函数,因为它们会返回一个承诺
let person={age:20}
person={…等待getNames()}
您可以为此使用Object.assign。。比如说
let person = { firstName: 'John', lastName: 'Doe', age: 67, //etc... }
let newPerson = Object.assign(person, getNames())
console.log(newPerson)
// Expected output: `{ firstName: 'newFirstName', lastName: 'newLastName', age: 67, etc... }`
您可以在此处查看有关Object.assign的详细信息:您可以为此使用Object.assign。。比如说
let person = { firstName: 'John', lastName: 'Doe', age: 67, //etc... }
let newPerson = Object.assign(person, getNames())
console.log(newPerson)
// Expected output: `{ firstName: 'newFirstName', lastName: 'newLastName', age: 67, etc... }`
您可以查看有关Object.assign的详细信息:您可能可以尝试以下操作:
({firstName:person.fistName,lastName:person.lastName}=getNames());
您需要事先将
person
定义为对象。您可能可以尝试以下方法:
({firstName:person.fistName,lastName:person.lastName}=getNames());
您需要事先将
person
定义为对象。您想要这样的东西吗?你想要这样的吗?如果person
不是空对象,该方法是否可以缩放?例如,如果它被定义为let person={age:20}
,则在运行建议的代码之前。是的。我更新了答案。需要定义对象。如果它有钥匙,它们将被更换。如果它没有键,它们将被添加到其中。如果person
不是空对象,这种方法是否可以缩放?例如,如果它被定义为let person={age:20}
,则在运行建议的代码之前。是的。我更新了答案。需要定义对象。如果它有钥匙,它们将被更换。如果它没有密钥,它们将被添加到其中。