定义
解构赋值, 就是将对象的属性/数组的元素值, 赋值给一个变量.
默认值
数组的解构赋值
应用场景, 成功的情况
解构成功的定义: 左边的每个变量值都不是undefined, 说明此解构是成功的.
- 完全解构: 左右元素个数等于右边元素个数, 且左到右的匹配模式是一致的.(嵌套数组也一样的逻辑)
let arr = [1, 2, 3, 8];
let [x, y, z, h] = arr;
结果:
x=1, y=2, z=3, h=8
- 不完全解构: 左边元素个数小于右边元素个数, 且左到右的匹配模式是一致的.(嵌套数组也一样的逻辑)
let arr = [1, 2, 3, 8];
let [x, y, z] = arr;
结果:
x=1, y=2, z=3
应用场景, 失败的情况
解构失败的定义: 只要左边任一变量值是undefined, 就说明此解构不成功.
- 右边是非数组或空数组, 左边是非空数组, 都会造成解构不成功.
- 左边元素个数大于右边元素个数( 从左往右匹配 )