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

        一起再看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精品国产综合久久四虎久久无码一级| 麻豆亚洲AV永久无码精品久久| 87国产私拍福利精品视频| 亚洲av无码乱码国产精品fc2| 国产人成精品综合欧美成人| 国产精品莉莉欧美自在线线| 热re99久久精品国99热| 精品午夜福利1000在线观看| 日韩欧美精品不卡| 99精品视频3| 国产在线精品免费aaa片| 亚洲精品字幕在线观看| 日本免费精品一区二区三区| 国产精品理论片在线观看| 久久夜色精品国产亚洲| 999成人精品视频在线| 国产成人精品一区二区秒拍| 久久精品人人做人人爽97| 亚洲国产精品无码久久久不卡| 亚洲äv永久无码精品天堂久久 | 午夜国产精品无套| 精品国产亚洲一区二区在线观看| 99久久国产主播综合精品| 国产精品成人在线| 国产精品合集一区二区三区| 99国产精品无码| 国产精品99久久久久久人| 97精品国产福利一区二区三区| 国产成人精品电影在线观看| 精品国产一区二区三区无码| 精品无码日韩一区二区三区不卡| 欧美精品VIDEOSSEX少妇| 欧美性videos高清精品| 久久99精品国产自在现线小黄鸭 | 国产精品无码一区二区在线观一| 9999国产精品欧美久久久久久| 最新国产の精品合集| 国产精品99久久久久久董美香| 国产综合精品久久亚洲| 欧美精品91欧美日韩操|