1.什么是解构赋值?
解析数据源 然后按照数据模型进行取值 再赋值给变量
它是一种声明变量的高级写法
大概模式: 数据模型=数据源
解构:按照数据模型取出数据源中的数据
赋值:然后赋值给模型变量
例子:
var [a,b,c]=arr//解构赋值
//隐式操作: var a=arr[0]; var b=arr[1]; var c=arr[2]
当给左边的变量赋初值后,
//所赋值为obj时
obj = {a:1,b:2,c:3}
let {a=10,b=5}=obj
//隐式操作:let a=10; a=obj.a, let b=5; b = obj.b;
//所赋值为arr时
arr = [1,2,3]
let [a=3,b=2,c=1] = arr
//隐式操作:let a = 3 ; a=arr[0],let b =2 ; b = arr[1],let c = 1; c = arr[2]
从上面的代码就可以总结出,解构赋值时,一般用于数组或者对象,当赋值为数组的时候,解构的变量名可以随便取,但当为对象的时候,解构变量名就得取对象里面应有的名字,否则无法取出。