站長資訊網
最全最豐富的資訊網站

一起再看JavaScript中的對象解構

解構是一個概念,分解其中一種數據類型并將其單獨的屬性分配給變量,在文章《JavaScript 解構賦值 5 個常見場景和實例》中介紹過,今天再來復習一下。

基礎解構

const fullName = {     firstName: "Quintion",     lastName: "Tang", }; const { firstName, lastName } = fullName; // 解構語法 console.log(firstName); // Quintion console.log(lastName); // Tang
登錄后復制

正如上面的代碼片段中看到的那樣,在解構語法中,分解了 firstName 對象屬性并將其分配給表達式左側定義的變量。在上述場景中,對象的屬性名稱應與左側表達式中定義的變量匹配。 如果定義其他變量名稱,則獲取不到想要的值,如:

const fullName = {     firstName: "Quintion",     lastName: "Tang", }; const { firstName, trueName } = fullName; // 解構語法 console.log(firstName); // Quintion console.log(trueName); // undefined
登錄后復制

由于在 fullName 中沒有屬性 trueName ,所以它被初始化為 undefined

別名解構

如果需要把對象屬性賦值給屬性名不一致的變量名,可以如下代碼來實現:

const fullName = {     firstName: "Quintion",     lastName: "Tang", }; const { firstName: trueName, lastName } = fullName; // 解構語法 console.log(trueName); // Quintion console.log(lastName); // Tang
登錄后復制

默認值解構

在上面代碼中有看到,對象中不存在特定屬性的解構,一般會賦值為 undefined ,如果不希望是 undefined ,可以為其設置一個默認值,如下:

const fullName = {     firstName: "Quintion",     lastName: "Tang", }; const { firstName: trueName, lastName, age = 18 } = fullName; // 解構語法 console.log(trueName); // Quintion console.log(lastName); // Tang console.log(age); // 18
登錄后復制

下面來看下存在 age 屬性下的結果:

const fullName = {     firstName: "Quintion",     lastName: "Tang",     age: 30, }; const { firstName: trueName, lastName, age = 18 } = fullName; // 解構語法 console.log(trueName); // Quintion console.log(lastName); // Tang console.log(age); // 30
登錄后復制

REST解構

如果想從一個對象中解構一個屬性,剩下的屬性結構為另一個變量,如下:

const fullName = {     firstName: "Quintion",     lastName: "Tang",     age: 30, }; const { age, ...username } = fullName; // 解構語法 console.log(username); // { firstName: 'Quintion', lastName: 'Tang' } console.log(age); // 30
登錄后復制

在上面的代碼片段中,將 username 屬性分配給了一個變量,并使用了 rest 運算符 (...) 將變量的其余部屬性分配給了一個單獨的對象。

推薦學習:《JavaScript視頻教程》

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
国产精品国产自线拍免费软件| 91久久精品国产成人久久| 在线精品日韩一区二区三区| 成人国产精品一级毛片视频| 四虎永久在线精品波多野结衣| 精品无码久久久久久国产| 久久99精品久久只有精品| 国产产无码乱码精品久久鸭| 中文字幕一区二区三区日韩精品| 亚洲国产综合精品一区在线播放 | 国产精品极品美女自在线观看免费 | 精品无码国产污污污免费网站 | 国产精品无码av天天爽| 亚洲精品9999久久久久无码| 精品久久久久久蜜臂a∨| 亚洲国产精品张柏芝在线观看| 99精品国产在这里白浆| 久久精品国产一区二区三| 久久se精品一区二区| 精品久久香蕉国产线看观看亚洲| 中日精品无码一本二本三本| 国产亚洲精品AA片在线观看不加载 | 亚洲国产日韩综合久久精品| 国产AV一区二区精品凹凸| 国产精品青青青高清在线| 热久久综合这里只有精品电影| 国产精品美女午夜爽爽爽免费| 久久精品国产99久久| 久久精品国产亚洲沈樵| 国产亚洲一区二区精品| 久久国产精品国产自线拍免费 | 亚洲精品美女久久久久久久| 久久精品桃花综合| 国产精品久久久久久久人人看| 国产精品久久久久久福利69堂| 国产日韩精品在线| 亚洲精品乱码久久久久久V| 久久精品无码一区二区三区不卡 | 亚洲精品麻豆av| 精品国产不卡一区二区三区| 久久国产精品免费|