Skip to content

由于解构这种语法最常见的用途在于函数的参数,所以这里做单独说明。

js
const user = {
	name:"张三",
	age:"20",
	address:{
		province:"四川",
		city:"成都"
	},
	loves:["唱","跳","rap","篮球"],
}
function print({name,age,address:{province,city},loves:[loves1,loves2,loves3,loves4]}){
	console.log(name,age,province,city,loves1,loves2,loves3,loves4);
}
print(user);//张三 20 四川 成都 唱 跳 rap 篮球

很显然,解构无非也是赋值,参数的传递本质上也是赋值,我们其实可以在参数中直接进行解构,这是解构赋值最常见的用法。

同样,我们可以给默认值

js
const user = {
	name:"张三",
	age:"20",
	address:{
		province:"四川",
		city:"成都"
	},
	loves:["唱","跳","rap","篮球"],
}
function print({name,age,address:{province,city},loves:[loves1,loves2,loves3,loves4],language="中文"} = {}){
	console.log(name,age,province,city,loves1,loves2,loves3,loves4,language);
}
print(user);//张三 20 四川 成都 唱 跳 rap 篮球 中文

以笔记为镜,可以知得失