ES6解构赋值

解构赋值的基本用法
数组解构
let [a,b,c] = [1,2,3] 
console.log(a)  //1
console.log(b)  //2
console.log(c)  //3
let [d,[e],f] = [1,[2],3] // 嵌套数组解构 d=1, e=2, f=3
let [g, ...h] = [1,2,4]// 数组拆分 g=1, h = [2,3]
let [i,,j] = [1,2,3] // i=1,j=3
let [k,l] = [1,2,3] //不完全解构 k=1, l=2
对象解构
let {a,b} = {a: 'aaa',b: 'bbb'}
let obj = {d: 'aaa', e: {f: 'bbbb'}}
let {d, e:{f}} = obj;
let {g} = {g: 'ff'};
let [h,i,j,k] = 'nice'

请注意:对象解构赋值的时候,变量名和对象属性名也要一一对应。

解构赋值,在开发中常用语简化代码,

变量赋值

如:

const {userName, password} = {userName: 'user', password: 123456}
const [userName,password] = ['user',123456]
函数参数传值
function personInfo(name, age, address, gender) {
  console.log(name, age, address, gender)
}
personInfo('william', 18, 'changsha', 'man')

以上,调用时需一一对应参数,否则会报错, 使用解构赋值则灵活地多。

function personInfo({name,age,address,gender}){
console.log(name,age,address,gender)
}
personInfo({gender: 'man', address: 'shanghai', name: 'YY', age:11})
交换变量的值
let a =1, b =9;
[a,b] = [b,a]
函数的默认参数
function saveInfo(name, age, address, gender) {
  name = name || 'william'
  age = age || 18
  address = address || 'changsha'
  gender = gender || 'man'
  console.log(name, age, address, gender)
}
saveInfo()

当然上述也可以写成

function saveInfo(name="YY",age=17,address='shanghai'){
console.log(name,age,address);
}

在这里插入图片描述

写法上是简单点,但是还是没解决 函数参数传值说的问题。所有还是用解构赋值来解决吧

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值