Destructuring 变量的解构赋值 是一种模式匹配
ES6我关注点之一是用途 能否举些好例子是检验学习到位的方法之一
交换变量值 函数返回多个值 函数入参为对象、数组,内部使用更简洁
意义:
减少冗余代码 let {a, b} = {'', false}
对同一对象的多次属性获取的优化写法很简洁 let {sin, PI} = Math
变量解构赋值的过程是将值遍历的过程(等号右边的值是一个可遍历解构(实现了Iterator))
默认值得生效条件: 值严格等于 undefined
捕将大括号写在行首,避免JS将其解释为代码块
解构赋值的规则是,只要等号右边的值不是东西或数组,就先将其转为对象。因为undefined、null无法转为对象,所以无法对它们进行解构赋值。
解构赋值不要乱用圆括号