es6解构

分析解构

文章详情

变量解构

  1. 单层

var {foo}=pony;等同 var foo=pony.foo;
var {foo:baz}=pony;等同var baz=pony.foo;
var {foo=‘bar’}=baz; //如果baz.foo为undefined,则foo取默认值bar
var {foo,bar:baz}={foo:0,bar:1};//foo=0;baz=1

  1. 多层

var {foo:{bar:deep}}={foo:{bar:‘baz’}};//deep=‘baz’
var {foo}={}//默认值为undefined
//多层未定义则报错
var {foo:{bar}}={};

数组解构

var [a,b]=[0,1];//a=0;b=1;
//可以忽略剩余赋值
var [a,b]=[0,1,2];//a=0;b=2;
//交换值
[a,b]=[b,a];

函数参数解构

function foo(bar=2){};//默认参数
function foo(bar={a:1,b=2}){};//函数默认参数可以是对象

  1. 完全解构
    function foo({a=1,b=2}){};
  2. 如果没参数设为空
    function foo({a=1,b=2}={}){};
发布了96 篇原创文章 · 获赞 61 · 访问量 19万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览