美文网首页
ES6——解构赋值

ES6——解构赋值

作者: 向上而活 | 来源:发表于2018-06-15 19:03 被阅读0次

    从数组或者对象中提取出数据,并分别赋值给多个变量。

    结构数组时,等号左边用数组的方式接收;

    结构对象时,等号左边用对象的形式接收;

    等号左边[]与{}中的变量,相当于在全局中定义的变量;

    解构赋值,在ajax数据交互中非常有用。用法参看以下例子:

    let [a,b,c]=[1,2,3];//等号左右两边,解构要保持一致

    console.log(a,b,c);//输出1 2 3


    let [d,e,f]=[1,[2,3]];

    console.log(d,e,f);//输出1 [2, 3] undefined


    let [g,[h,i]]=[1,[2,3]];

    console.log(g,h,i);//输出 1 2 3


    let json={

    name:'qqqq',

    age:'12',

    job:'web'

    };

    let {name,age,job}=json;

    console.log(name,age,job);//输出qqqq 12 web


    也可以给每一项重新起名字,效果一样(可用于数据交互时,前后字段名不一致时,更改字段名):

    let {name:n,age:a,job:j}=json;

    console.log(n,a,j);//输出qqqq 12 web


    解构封装的函数:

    function box(){

        return{

            a:111,

            b:222

        }

    }

    let {a,b}=box();

    console.log(a,b);//输出 111 222


    函数传参:

    function box({a,b}){

    console.log(a,b);//输出1 2

    }

    box({a:1,b:2});


    解构时可以给默认值:

    let [a,b,c=’默认值’]=[‘aaa’,’bbb’];


    两个变量互换值:

    let a=1;

    let b=2;

    [a,b]=[b,a]

    console.log(a,b);//输出2 1

    相关文章

      网友评论

          本文标题:ES6——解构赋值

          本文链接:https://www.haomeiwen.com/subject/fjnmeftx.html