解构赋值
1、左右两边结构必须一样(数据类型、个数)
2、右边必须是个东西(语法无误)
3、声明和赋值不能分开(必须在一句话里完成)
let arr = [1,2,3]
let a = arr[0]
let b = arr[1]
let c = arr[2]
console.log(a,b,c) //1,2,3
解构赋值
let [a,b,c] = [1,3,5]
console.log(a,b,c) //1,3,5
实例1、左右两边结构必须一样
let [a,b,c] = [1,3,5,7]
console.log(a,b,c) //Identifier 'a' has already been declared 标识符a已经被声明
let [a,b] = {a:10,b:20}
console.log(a,b) //{(intermediate value)(intermediate value)} is not iterable 不可迭代
实例2、复杂结构
let [arr, json, num, str] = [[1,2,3], {a:10, b:20, c:30}, 66, 'wenmeichao']
console.log(arr, json, num, str) //Array(3) Object 66 "wenmeichao"
实例3、声明和赋值不能分开
let [a,b]
[a,b] = [1,2] //Missing initializer in destructuring declaration 解构声明缺少初始化
console.log(a,b)