使用嵌套解构和 javascript 对象别名

Mel*_*a93 4 javascript ecmascript-6

我有这个对象

const storeObj = {
    name: {
        firstName: 'abc'
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以通过分配做别名nameusername

const { name: username } = storeObj
Run Code Online (Sandbox Code Playgroud)

我可以像这样进行嵌套解构

const { name: { firstName } } = storeObj
Run Code Online (Sandbox Code Playgroud)

我可以同时使用它们吗?我想在别名 aka renanming 和嵌套解构时实现一行。

Cer*_*nce 11

是的,只需将这两者放在一起 - 当您想分配一个与属性名称不同的变量名称时,请将新变量名称放在冒号之后。无论嵌套对象的级别如何,这都有效。

const storeObj = {
    name: {
        firstName: 'abc'
    }
}
const { name: { firstName: username } } = storeObj;
console.log(username);
Run Code Online (Sandbox Code Playgroud)