這篇文章主要介紹ES6的解構(gòu)賦值的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的尼開(kāi)遠(yuǎn)網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
1 什么是解構(gòu)賦值
解構(gòu)賦值允許你使用類(lèi)似數(shù)組或?qū)ο笞置媪康恼Z(yǔ)法將數(shù)組和對(duì)象的屬性賦給各種變量。這種賦值語(yǔ)法極度簡(jiǎn)潔,同時(shí)還比傳統(tǒng)的屬性訪問(wèn)方法更為清晰。解構(gòu)會(huì)僅提取出一個(gè)大對(duì)象中的部分成員來(lái)單獨(dú)使用。
如下是傳統(tǒng)的:
var y=data[0] var m=data[1] var d=data[2]
但在ES6中可以簡(jiǎn)寫(xiě)為:
var [y,m,d]=date;
2 數(shù)組與對(duì)象的解構(gòu)
數(shù)組解構(gòu)賦值語(yǔ)法的一般形式為:
[ variable1, variable2, ..., variableN ] = array;
這將為variable1到variableN的變量賦予數(shù)組中相應(yīng)元素項(xiàng)的值。如果你想在賦值的同時(shí)聲明變量,可在賦值語(yǔ)句前加入var、let或const關(guān)鍵字
對(duì)象的解構(gòu)類(lèi)似,如下所示:
var user={ uid:1001, uname:"dingding", set:1, signin:function(){ console.log("登錄..."); }, signout:function(){ console.log("注銷(xiāo)..."); }, signup:function(){ console.log("注冊(cè)..."); } } //var {uid:uid,signup:signup}=user;//簡(jiǎn)寫(xiě)如下 var {uid,signup}=user; console.log(uid); signup();
對(duì)象解構(gòu)的一個(gè)特殊用法是參數(shù)結(jié)構(gòu),在向函數(shù)中傳參時(shí),將一個(gè)大的對(duì)象,打散后,傳遞給對(duì)應(yīng)的形參變量,有效解決了傳參時(shí)有多個(gè)形參不確定但又要求按順序傳入的需求
//1. 定義形參列表時(shí),就用對(duì)象結(jié)構(gòu)定義 function ajax({ //與順序無(wú)關(guān) url, type, data,//不確定 dataType,//不確定 }){ console.log(`向${url}發(fā)送${type}請(qǐng)求`); if(data!=undefined&&type=="get"){ console.log(`在url結(jié)尾拼接參數(shù)?${data}`) } if(data!=undefined&&type=="post"){ console.log(`xhr.send(${data})`); } if(dataType=="json"){ console.log(`JSON.parse(返回結(jié)果)`); } } //2. 調(diào)用函數(shù)傳參時(shí),所有實(shí)參值,都要放在一個(gè)對(duì)象結(jié)構(gòu)中整體傳入。 ajax({ url:"http://localhost:3000/products/getProductsByKwords", type:"get", data:"kw=macbook i5", dataType:"json" });
使用解構(gòu)很方便,但它強(qiáng)調(diào)對(duì)應(yīng)關(guān)系,數(shù)組解構(gòu):下標(biāo)對(duì)下標(biāo),對(duì)象解構(gòu):屬性對(duì)屬性,但允許元素或者參數(shù)為空,例如下面三種寫(xiě)法:
var [y,,]=date; var [y,,d]=date; var [,m,]=date;
雖然有不同位置的元素為空,但是依然可以正常執(zhí)行賦值操作,不過(guò)和傳統(tǒng)方法一樣,為空的在用時(shí)會(huì)按undefined處理。
以上是“ES6的解構(gòu)賦值的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!