ES6-對(duì)象的解構(gòu)賦值

構(gòu)不僅可以用于數(shù)組,還可以用于對(duì)象
對(duì)象的屬性沒(méi)有次序,但是變量必須與屬性同名,才能取到正確的值。
對(duì)象的解構(gòu)賦值不用按照順序:

var { name, age, id } = { id: "007", name: "Conan", age: 28 };
console.log(name);  //Conan
console.log(age);   //28
console.log(id);    //007

量名與屬性名不一致:

var { name: person_name, age: person_age, id: person_id } = { id: "007", name: "Conan", age: 28 };
console.log(person_name);   //Conan
console.log(person_age);    //28
console.log(person_id);     //007

let object = { first: "Hello", last: "World" };
let { first: firstName, last: lastName} = object;
console.log(firstName); //Hello
console.log(lastName);  //World

指定默認(rèn)值
默認(rèn)值生效的條件是,對(duì)象的屬性值嚴(yán)格等于undefined。
等于null則不生效。

var { x = 3 } = {};
console.log(x); //3

var { x, y = 5 } = { x: 1 };
console.log(x); //1
console.log(y); //5

var { message: msg = "You Are A Person!" } = {};
console.log(msg);   //You Are A Person!

  var { x = 3 } = { x: undefined };
console.log(x); //3

var { y = 3 } = { y: null };
console.log(y); //null

現(xiàn)有對(duì)象的方法
對(duì)象的解構(gòu)賦值,可以很方便地將現(xiàn)有對(duì)象的方法,賦值到某個(gè)變量。

var x;
({x} = { x: 1 });
console.log(x); //1
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容