美文网首页
es6解构赋值(数组解构)

es6解构赋值(数组解构)

作者: 蜗牛和曼巴 | 来源:发表于2018-11-11 01:35 被阅读0次

    解构赋值
    什么是解构赋值
    左边和右边一一对应进行赋值
    解构赋值的分类
    数组解构赋值(重点) 对象解构赋值(重点)字符串解构赋值 布尔值解构赋值 函数参数解构赋值 数值解构赋值


    数组解构类型的赋值

    {
     let a,b,c;
    [a,b]=[1,2];
    console.log(a,b);
    }
    
    {
     let a,b,c;
    [a,b,c=3]=[1,2];
    console.log(a,b,c); 
    //打印出来的c是3,
    
    如果没有赋值3那么C
    
    就是undefine
    }
    

    如果解构赋值没有成功配对,那么就是undefine

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

    打印出来的结构是:1 2 [3,4,5,6]

    对象的解构赋值

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

    解构赋值的场景
    变量值之间的交换

    {
    let a=1;
    let b=2;
    [a,b]=[b,a]
    console.log(a,b)
    打印的值出来就交换了
    }
    

    应用场景2()

    { 
     function f(){
     return[1,2]
    }
    let a,b;
    [a,b]=f();
    console.log(a,b)
    打印出来是1,2
    }
    

    应用场景3(返回多个值时可以选择去接
    收某个变量,可以忽略某些)

    {
    function f(){
    return[1,2,3,4,5]
    }
    let a,b,c;
    [a,,,b]=f();
    console.log(a,b)
    }
    打印出来的1,4
    因为中间两个逗号是2,3
    

    应用场景4(3和4可以混合用)

    function f(){
    return[1,2,3,4,5]
    }
    let a,b,c;
    [a,...b]=f();
    console.log(a,b);
    打印出来是1,[2,3,4,5]
    

    相关文章

      网友评论

          本文标题:es6解构赋值(数组解构)

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