Hello! 欢迎来到小浪资源网!

ES6解构赋值如何优雅地获取多层嵌套对象?


ES6解构赋值如何优雅地获取多层嵌套对象?

es 析构多层解析获取不到中间层对象解决方案

在使用 es 析构赋值时,如果要同时获取到多层嵌套对象,可以采用以下方法:

一种方法是使用一行解构,如下所示:

const { person, person: { name, age } } = obj;

使用此方法,可以同时解构出 person 对象和其中的 name 和 age 属性。

另一种方法是在使用解构赋值时,先设置默认值,防止中间层对象不存在导致报错,如下所示:

const {person = {}, person: {name = '', age} = {}} = obj;

使用此方法,如果 person 对象不存在,则将 person 解构为一个空对象;如果 person 对象中不存在 name 或 age 属性,则将 name 和 age 解构为一个空字符串undefined

相关阅读