ES6语法简介——5、解构赋值(二)

<h1>5、解构赋值(二)</h1>
<div><h3>5.2、数组解构</h3>
    <p>
        <span>在ES6中,对象和数组可以使用解构功能,可以按照一定模式从对象和数组中提取值,对变量进行赋值。数组解构是使用方括号。</span>
        <br>例:<pre>
            let arr=[1,2,3];
            let [a,b,c]=arr;
            console.log(a);//1
            console.log(b);//2
            console.log(c);//3
        </pre>
        变量值是根据数组中元素的顺序进行选取的。无论数组中的元素有多少个,都可以通过let[,,c]=arr的方式来获取。
    </p>
    <p>
        <span>对于已经声明过的变量,不需要使用圆括号包裹解构语句。C前面的逗号是占位符,不管数组中的元素有多少个,都可以通过这种方式提取想要的元素。</span>
        <br>例:
        <pre>
            let arr=[1,2,3];
            let a,b,c;
            [a,b,c]=arr;//ok
        </pre>
    </p>
    <p>
        <span>如果变量之前已经声明了,那么需要使用圆括号把整个解构赋值语句包起来。</span>
        <br>例:<pre>
            let title,isbn,price;
            ({title,isbn,price})=book;
        </pre>
    </p>
    <p>
        <span>在数组解构赋值表达式为数组中任意位置添加默认值,当指定元素不在在于或者其值为undefined时使用函数</span>
        <br>例:<pre>
            let arr=[1,2,3];
            let [a,b,c,d=0];
            console.log(d);//0
        </pre>
    </p>
    <p>
        <span>嵌套数组解构只在原来的数组结构模式中插入另一个数组解构模式,即可将解构过程深入下一层。</span>
        <br>例:<pre>
            let categories=["C/C++",["vue","react"],"java"];
            let [language1,[,language2]]=categories;
            console.log(language1);//c/c++
            console.log(language2);//react
        </pre>
        变量language2两侧的方括号表示该变量的值应该到下一层去查找,language2前面的逗号跳过了数组内部的第一个元素,所以值是react
    </p>
</div>
posted @ 2020-11-12 11:35  0总在1前面  阅读(69)  评论(0)    收藏  举报