let obj ={name:"wyt",age:18,school:"七中",};//即将对象obj内的除了name以外的属性组件成一个新对象let{ name,...rest }= obj;console.log("name:"+ name);console.log(rest);
效果
6)赋予默认值
示例
let obj ={name:"wyt",age:18,};//此时的school被赋予了默认值七中,当school未匹配到时或者值为undefined时值为七中let{ name, age, school ="七中"}= obj;console.log("name:"+ name);console.log("age:"+ age);console.log("school:"+ school);
效果
四、应用
1)常用于解构对象中的方法
// 例一let{ log, sin, cos }= Math;// 例二const{ log }= console;log('hello')// hello//例一将Math对象的对数、正弦、余弦三个方法,赋值到对应的变量上,使用起来就会方便很多。//例二将console.log赋值到log变量。
2)常用于解构JSON对象里面所需的属性
let jsonData ={id:42,status:"OK",data:[867,5309],};//此时仅仅需要id和data属性的值let{ id, data }= jsonData;console.log("id:"+ id);console.log("data:");console.log(data);