亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    一起再看JavaScript中的對(duì)象解構(gòu)

    解構(gòu)是一個(gè)概念,分解其中一種數(shù)據(jù)類型并將其單獨(dú)的屬性分配給變量,在文章《JavaScript 解構(gòu)賦值 5 個(gè)常見場(chǎng)景和實(shí)例》中介紹過,今天再來(lái)復(fù)習(xí)一下。

    基礎(chǔ)解構(gòu)

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

    正如上面的代碼片段中看到的那樣,在解構(gòu)語(yǔ)法中,分解了 firstName 對(duì)象屬性并將其分配給表達(dá)式左側(cè)定義的變量。在上述場(chǎng)景中,對(duì)象的屬性名稱應(yīng)與左側(cè)表達(dá)式中定義的變量匹配。 如果定義其他變量名稱,則獲取不到想要的值,如:

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

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

    別名解構(gòu)

    如果需要把對(duì)象屬性賦值給屬性名不一致的變量名,可以如下代碼來(lái)實(shí)現(xiàn):

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

    默認(rèn)值解構(gòu)

    在上面代碼中有看到,對(duì)象中不存在特定屬性的解構(gòu),一般會(huì)賦值為 undefined ,如果不希望是 undefined ,可以為其設(shè)置一個(gè)默認(rèn)值,如下:

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

    下面來(lái)看下存在 age 屬性下的結(jié)果:

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

    REST解構(gòu)

    如果想從一個(gè)對(duì)象中解構(gòu)一個(gè)屬性,剩下的屬性結(jié)構(gòu)為另一個(gè)變量,如下:

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

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

    推薦學(xué)習(xí):《JavaScript視頻教程》

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)