ES6解构赋值

 

        解构赋值它语法是一个 Javascript 表达式,这使得可以将值从数组或属性从对象提取到不同的变量中。

        解构赋值在进行数据交互时十分有用。

        首先,用一个简单的例子来回顾解构赋值:

        let a=8;

        let b=17;

        let c=6;

        console.log(a,b,c);//8,17,6

 ==> let [a,b,c]=[8,17,6];//一一对应

若将数组改为:let [a,b,c]=[8,[17,6]];  //打印结果没有c,b的结果为17,6。

 

        解构赋值具体用法:

        1. let json={

                name:"tina",

                age:18,

                job:"IT"

            };

==>进行解构:let {name,age,job}=json;

                         console.log(name,age,job);  //可直接打印

 

        2.解构时进行改名:

           let {name,age,job:work}=json;

           //此时,打印job时为undefined, 应该打印work。

        3.解构时给默认值:

           无默认值: let  [a,b,c]=["aa","bb"];

           加默认值:  let  [a,b,c=“default”]=["aa","bb"];

                                //是打印结果为:aa,bb,default;

        

 

           但是,如果为: let  [a,b,c=“暂无”]=["aa","bb",null];

                                     console.log(a,b,c);        //aa,bb,null

            (打印null是因为null是指有值的;若把null换成undefined,则c会打印成“暂无”,undefined没有值。)

         4.用解构赋值来交换位置

            let  a=7;

            let b=8;

            [a,b]=[b,a];  //a,b已经被定义过,所以不用再次定义

            cosole.log(a,b);  //7,8

         5.解构赋值关于函数的应用

            先定义一个函数:

                    function pos(){

                        return {

                             left:100;

                             top:100   

                        }

                    }

                    let   {left,top:getTop}=pos(); 

                    //直接用top无法打印,已经被Windows声明过,所以要将其改名。

                    或者,也可以将其写成: ({left,top}=pos());

                    //  结果为:100,100

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值