国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

解構(gòu)小結(jié)

denson / 2571人閱讀

摘要:基本概念作用解構(gòu)是有組織的從對(duì)象或數(shù)組中提取信息片段條件明確從哪提取信息片段,即信息來(lái)源于哪個(gè)對(duì)象或數(shù)組明確提取什么信息片段,即對(duì)象的哪個(gè)屬性或數(shù)組的第幾個(gè)元素其他解構(gòu)除了提取信息片段之外,還有一些輔助的功能為可能提取不到的信息設(shè)置默認(rèn)值為

基本概念 作用

解構(gòu)是有組織的從對(duì)象或數(shù)組中提取信息片段

條件

明確從哪提取信息片段,即信息來(lái)源于哪個(gè)對(duì)象或數(shù)組

明確提取什么信息片段,即對(duì)象的哪個(gè)屬性或數(shù)組的第幾個(gè)元素

其他

解構(gòu)除了提取信息片段之外,還有一些輔助的功能

為可能提取不到的信息設(shè)置默認(rèn)值

為提取到的信息重新命名

場(chǎng)景

解構(gòu)的使用場(chǎng)景不僅在聲明變量賦值階段,也可以單純地給以有的變量重新賦值

在函數(shù)參數(shù)中使用解構(gòu)

舉例
let node = {
    type: "Identify",
    name: "foo",
    subNode: {
        name: "subFoo"
    }
}

let {
    type, // 獲得node的type信息
    name: myname, // 獲得node的name信息,并重命名為myname
    text, // 獲得node的text信息,若不存在且不設(shè)置默認(rèn)值,則為undefined
    value: myvalue = "gaga", // 獲得node的value信息,并重命名為myvalue,若不存在,則為"gaga"
    subNode: { // 獲得node的subNode中的name信息,并重命名為subName,嵌套解構(gòu)
        name: subName
    }
} = node // 從node中獲得信息來(lái)源

type // "Identify"
text // undefined
value // ReferenceError
myvalue // "gaga"
subName // "subFoo"

上面的代碼與下面的代碼輸出相同

let node = {
    type: "Identify",
    name: "foo",
    subNode: {
        name: "subFoo"
    }
}

let type,
    myname,
    text,
    myvalue = "hehe",
    subName

({
    type,
    name: myname,
    text,
    value: myvalue = "gaga",
    subNode: {
        name: subName
    }
} = node)
數(shù)組解構(gòu) 與對(duì)象解構(gòu)的不同之處

對(duì)象通過(guò)屬性名來(lái)標(biāo)示信息片段,數(shù)組通過(guò)位置來(lái)標(biāo)示信息

對(duì)象解構(gòu)默認(rèn)將提取到的信息賦給與屬性名相同的變量中,數(shù)組需要給提取出的信息命名

可用于交換變量

舉例
let colors = ["red", "green", "blue"]
let [,,thirdColor] = colors // 從colors數(shù)組中提取下標(biāo)為2的元素
let [firstColor] = colors // 從colors數(shù)組中提取下標(biāo)為0的元素
let [,secondColor,,fourthColor] = colors 
// 從colors數(shù)組中提取下標(biāo)為1和3的元素,若元素不存在則為undefined
let [,secondColor,,fourthColor = "yellow"] = colors // 設(shè)置默認(rèn)值
// 嵌套解構(gòu)
let colors = ["red", ["green", "lightgreen"], "blue"]
let [, [,subColor],] = colors
// 不定元素
let colors = ["red", "green", "lightgreen", "blue"]
let [first, ...others] = colors
others // ["green", "lightgreen", "blue"]
// 交換變量
let a = 1,
    b = 2;
[a, b] = [b, a]

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/92581.html

相關(guān)文章

  • ES6: 解構(gòu)賦值(Destructuring)

    摘要:一概念對(duì)象是屬性的集合,從對(duì)象里取值,只能逐個(gè)取,而解構(gòu)賦值表達(dá)式可以實(shí)現(xiàn)批量取值,賦值。賦值操作符等號(hào)兩邊的解構(gòu)要一致才能正確賦值解構(gòu)賦值表達(dá)式是賦值表達(dá)式的語(yǔ)法糖。三數(shù)組解構(gòu)賦值數(shù)組的屬性名稱叫索引,表示的是位置。 一、概念 對(duì)象是屬性的集合,從對(duì)象里取值,ES3/5只能逐個(gè)取,而解構(gòu)賦值表達(dá)式可以實(shí)現(xiàn)批量取值,賦值。 // 數(shù)據(jù)對(duì)象person var person = { ...

    CODING 評(píng)論0 收藏0
  • 面試小結(jié)(一)

    摘要:面試問(wèn)到的問(wèn)題繼承的幾種方法,,原形繼承面向?qū)ο蟮膸追N方法五種方式對(duì)象字面量創(chuàng)建實(shí)例對(duì)象構(gòu)造函數(shù)工廠模式用一個(gè)函數(shù),通過(guò)傳遞參數(shù)返回對(duì)象。打包原理打包原理把所有依賴打包成一個(gè)文件,通過(guò)代碼分割成單元片段并按需加載。 面試問(wèn)到的問(wèn)題:1、繼承的幾種方法; Call,apply,原形繼承; 2、面向?qū)ο蟮膸追N方法; 五種方式: 1)對(duì)象字面量:var obj={}; 2)創(chuàng)建實(shí)例對(duì)象:va...

    xiaodao 評(píng)論0 收藏0
  • 面試小結(jié)(一)

    摘要:面試問(wèn)到的問(wèn)題繼承的幾種方法,,原形繼承面向?qū)ο蟮膸追N方法五種方式對(duì)象字面量創(chuàng)建實(shí)例對(duì)象構(gòu)造函數(shù)工廠模式用一個(gè)函數(shù),通過(guò)傳遞參數(shù)返回對(duì)象。打包原理打包原理把所有依賴打包成一個(gè)文件,通過(guò)代碼分割成單元片段并按需加載。 面試問(wèn)到的問(wèn)題:1、繼承的幾種方法; Call,apply,原形繼承; 2、面向?qū)ο蟮膸追N方法; 五種方式: 1)對(duì)象字面量:var obj={}; 2)創(chuàng)建實(shí)例對(duì)象:va...

    SnaiLiu 評(píng)論0 收藏0
  • 面試小結(jié)(一)

    摘要:面試問(wèn)到的問(wèn)題繼承的幾種方法,,原形繼承面向?qū)ο蟮膸追N方法五種方式對(duì)象字面量創(chuàng)建實(shí)例對(duì)象構(gòu)造函數(shù)工廠模式用一個(gè)函數(shù),通過(guò)傳遞參數(shù)返回對(duì)象。打包原理打包原理把所有依賴打包成一個(gè)文件,通過(guò)代碼分割成單元片段并按需加載。 面試問(wèn)到的問(wèn)題:1、繼承的幾種方法; Call,apply,原形繼承; 2、面向?qū)ο蟮膸追N方法; 五種方式: 1)對(duì)象字面量:var obj={}; 2)創(chuàng)建實(shí)例對(duì)象:va...

    shmily 評(píng)論0 收藏0
  • indexedDB入門

    摘要:概述是一個(gè)事務(wù)型數(shù)據(jù)庫(kù)系統(tǒng),類似于基于的。然而不同的是它使用固定列表,是一個(gè)基于的面向?qū)ο蟮臄?shù)據(jù)庫(kù)。參考文檔瀏覽器數(shù)據(jù)庫(kù)入門教程 概述 IndexedDB 是一個(gè)事務(wù)型數(shù)據(jù)庫(kù)系統(tǒng),類似于基于 SQL 的 RDBMS。 然而不同的是它使用固定列表,IndexedDB 是一個(gè)基于 JavaScript 的面向?qū)ο蟮臄?shù)據(jù)庫(kù)。現(xiàn)有的瀏覽器數(shù)據(jù)儲(chǔ)存方案,都不適合儲(chǔ)存大量數(shù)據(jù):Cookie 的大小...

    awesome23 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<