总结

解构使得在 JS 中操作对象与数组变得更容易。使用熟悉的对象字面量与数组字面量语法,可以将数据结构分离并只获取你感兴趣的信息。对象解构模式允许你从对象中进行提取,而数组模式则能用于数组。

对象与数组解构都能在属性或项未定义时为其提供默认值;在赋值表达式右侧的值为 nullundefined 时,两种模式都会抛出错误。你也可以在深层嵌套的数据结构中使用对象与数组解构,下行到该结构的任意深度。

使用 varletconst 的解构声明来创建变量,就必须提供初始化器。解构赋值能替代其他赋值,并且允许你把值解构到对象属性或已存在的变量上。

参数解构使用解构语法作为函数的参数,让 “选项”(options)对象更加透明。你实际感兴趣的数据可以与具名参数一并列出。解构的参数可以是对象模式、数组模式或混合模式,并且你能使用它们的所有特性。