对象解构
let person = { name: 'zhangsan', age: 20 };
let { name, age } = person;
console.log(name); // 'zhangsan'
console.log(age); // 20
let {name: myName, age: myAge} = person; // myName myAg属于别名
console.log(myName); // 'zhangsan'
console.log(myAge); // 20
let zcy = {
name:'易烊千玺',
gender:'男',
age:18
}
//基本解构:重命名属性
//let {name:zcyname,gender,age}=zcy
//对象的默认值
//salary工资:重命名(money)
// let {name:zcyname,gender,age,salary:money='8000'}=zcy
// alert(money)
// function selfIntroduction({name:zcyname,gender,age,salary=8000}){//形参
// alert('我叫'+zcyname+'今年'+age+'是个可爱的'+gender+'宝宝,但是月收入'+salary)
// }
// //调用函数
// selfIntroduction(zcy)//传入的实参
function selfIntroduction({name:zcyname,gender,age,salary=1000000}){//形参
//模板字符串:`` ${}
alert(`我叫${zcyname}今年${age}是个努力的${gender}演员,但是月收入${salary}`)
}
//调用函数
selfIntroduction(zcy)//传入的实参
数组解构
let [a, b, c] = [1, 2, 3];
console.log(a)//1
console.log(b)//2
console.log(c)//3
//如果解构不成功,变量的值为undefined
let arr = ['a','b','c']
let arr2 = [0,1,2]
//解构数组
//let [a,b,c] = arr
//只解构第一个
// let[a]=arr
// alert(a)
//let[b]=arr
//alert(b)
// let[,b,]=arr
// alert(b)
//合并数据,解构的发向使用
// let longArr = [...arr, ...arr2]
// console.log(longArr)
//解构2个并把剩余的放在一起:剩余参数rest
let [a,b,...newArr] = arr
//alert(b)
//alert(newArr[0])
//默认值
let [na,n2,n3,n4 = 8] = arr2
alert(n4)
提示:如有不对请多多指教!希望给您带来帮助!多谢。