第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

復(fù)雜對(duì)象的深拷貝

復(fù)雜對(duì)象的深拷貝

慕無(wú)忌1623718 2018-12-13 18:18:10
1,復(fù)雜對(duì)象描述,類似下圖:注意:bbb數(shù)組中的每一個(gè)對(duì)象都還有一個(gè)ccc數(shù)組,ccc數(shù)組里每個(gè)元素都有若干鍵值對(duì)。因?yàn)檫@是之前的圖,沒有修改,見諒!2,需求描述:深拷貝這個(gè)復(fù)雜的數(shù)組對(duì)象。還是大致描述一下我的需求吧,最外層數(shù)組有若干個(gè)對(duì)象,每一個(gè)都是一類物品,aaa是這個(gè)物品的類別(比如說(shuō)筆)。bbb是這類物品的一個(gè)集合(比如說(shuō),鉛筆,圓珠筆1,圓珠筆2。即bbb.name)。bbb中再有ccc數(shù)組,可以是bbb的一個(gè)屬性集合(比如說(shuō)是廠家a,廠家b);3,做過的嘗試:(1),Object.assign();只能拷貝第一層。(2),JSON.stringify()和JSON.parse(),有一些缺點(diǎn),例如當(dāng)某一屬性值為function時(shí)就不能用這個(gè)方法。4,目前的想法:(1):遞歸復(fù)制。(新手,不常用遞歸,也不怎么會(huì)用遞歸)(2):jq的extend。(不想引入jq,當(dāng)然也不知道能不能用)5,請(qǐng)各位大神指點(diǎn)!6,有大神指出不能做伸手黨,那么請(qǐng)各位大神只提供一下思路,或者一些小弟不知道的方法,或者是偽代碼,感謝各位i!
查看完整描述

1 回答

?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

function clone(obj) {

  if (obj == null) {

    return null

  }

  if (Array.isArray(obj)) {

    const a = []

    for (let i = 0; i < obj.length; i++) {

      a.push(clone(obj[i]))

    }

    return a

  } else if (typeof obj === 'object') {

    const o = {}

    for (let key in obj) {

      o[key] = clone(obj[key])

    }

    return o

  }

  return obj

}


查看完整回答
反對(duì) 回復(fù) 2019-01-10
  • 1 回答
  • 0 關(guān)注
  • 401 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)