es6-解构赋值(下班后日常学习,给自己看,坚持)


{
  let a,b;
  [a,b]=[1,2];
  console.log(a,b);
}

{
  let a,b,rest;
  [a,b,...rest]=[1,2,3,4,5,6];
  console.log(a,b,rest);
}

{
  let a,b;
  ({a,b}={a:1,b:2})
  console.log(a,b);
}

{
  let a,b,c;
  [a,b,c=3]=[1,2];
  console.log(a,b,c);
}

{//适用于变量交换,不需要中间变量
  let a=1;
  let b=2;
  [a,b]=[b,a];
  console.log(a,b);
}

{//直接拿到返回值,不需要在用一个变量去保存
  
  function f(){
    return [1,2]
  }

  let a,b;
  [a,b]=f();
  console.log(a,b);
}

{//返回多个值的时候,可选择我想要的值
  function f(){
    return [1,2,3,4,5];
  }

  let a,b;
  [a,,,b]=f();
  console.log(a,b)
}

{//当不知道返回数组长度的时候,我只想拿第一个,其余保存用于遍历
  function f(){
    return [1,2,3,4,5];
  }

  let a,b,c;
  [a,...b]=f();
  console.log(a,b);
}

{
  let {a=10,b=3}={a:3}

  console.log(a,b)
}

{
  let metaData={
    title:'abc',
    test:[{
      title:'test',
      desc:'description',
    }]
  }

  let {title:esTitle,test:[{title:cnTitle,desc:myDesc}]}=metaData;

  console.log(esTitle,cnTitle,myDesc)
}

{
  let metaData={
    title:'abc',
    test:[{
      title2:'test',
      desc:'description'
    }]
  }
 
  let {title,test:[{title2,desc}]}=metaData;

  console.log(title,title2,desc)
}

优质内容筛选与推荐>>
1、Quartz集群配置(100%成功)
2、java.net.ConnectException:
3、缓冲运动
4、使用Azure进行自动化机器学习
5、memcached共享session


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号