能否仅通过一次操作完成嵌套JavaScript对象的解构赋值?
可以通过嵌套对象解构语法一次完成所有变量提取,写法如下:
const { a, a: { b, c, c: { d } } } = o;
语法说明
- 第一层先从对象
o中提取顶层变量a - 紧接着嵌套解构
a对应的属性,提取同级变量b、c - 再嵌套解构
c对应的属性,提取同级变量d
执行后直接使用你给出的打印语句:
console.log( {a,b,c,d} )
输出结果和你三次分步解构的结果完全一致:
{ a: { b: 'b-value', c: { d: 'd-value' } }, b: 'b-value', c: { d: 'd-value' }, d: 'd-value' }
内容的提问来源于stack exchange,提问作者MaxP
相关产品推荐
相关产品推荐

