我想知道是否存在一种紧凑的方法来从对象中提取属性,然后使用相同的属性名称将所述属性分配给新对象的根。

基本上,我想执行以下操作而不需要第一行:

const targetProp = someObj.data.targetProp;
const newObj = {
     targetProp
}


我想像的样子:

const newObj = {
     [someObj.data.targetProp]
}


然后newObj将具有名为“ targetProp”的属性,其值为someObj.data.targetProp

最佳答案

不需要额外的变量:

const newObj = {
  targetProp: someObj.data.targetProp
}


可以使用解构来减少原始代码的大小,但这需要保留第一行:

const { targetProp } = someObj.data;
const newObj = { targetProp };


我认为没有什么比这两种选择更好的了。

07-24 17:15