成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

對(duì)象深拷貝原理函數(shù)

chavesgu / 1270人閱讀

摘要:深拷貝兩者之間改變互不影響拷貝后兩者之間不再存在共享關(guān)系拷貝之后數(shù)據(jù)類型不能發(fā)生改變,也就是需要判斷是數(shù)組的時(shí)候,需要進(jìn)行多帶帶遞歸的遍歷在繼承的時(shí)候,我們通過(guò)原型屬性實(shí)現(xiàn)原型對(duì)象屬性的繼承,在進(jìn)行深拷貝的時(shí)候,我們首先需要提出原型對(duì)象上的屬

深拷貝 兩者之間改變互不影響
1 拷貝后兩者之間不再存在共享關(guān)系
2 拷貝之后數(shù)據(jù)類型不能發(fā)生改變,也就是需要判斷是數(shù)組的時(shí)候,需要進(jìn)行多帶帶遞歸的遍歷
3 在繼承的時(shí)候,我們通過(guò)原型屬性實(shí)現(xiàn)原型對(duì)象屬性的繼承,在進(jìn)行深拷貝的時(shí)候,我們首先需要提出原型對(duì)象上的屬性;通過(guò)hasOwnProperty方法來(lái)進(jìn)行篩選;

    function deepCopy(params) {
      if(typeof params !== "object") {
        console.log("您輸入的不是對(duì)象");
        return params;
      }
      let target = null;
      if(typeof params === "object" && params !== null) {
        target = Array.isArray(params) ? [] : {}
        for (let key in params) {
          if(params.hasOwnProperty(key)) {
            if(typeof params[key] === "object") {
              target[key] = deepCopy(params[key]);
            } else {
              target[key] = params[key];
            }
          }
        }
      }
      return target;
    }

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96189.html

相關(guān)文章

  • 【進(jìn)階4-1期】詳細(xì)解析賦值、淺拷貝拷貝的區(qū)別

    摘要:展開(kāi)語(yǔ)法木易楊通過(guò)代碼可以看出實(shí)際效果和是一樣的。木易楊可以看出,改變之后的值并沒(méi)有發(fā)生變化,但改變之后,相應(yīng)的的值也發(fā)生變化。深拷貝使用場(chǎng)景木易楊完全改變變量之后對(duì)沒(méi)有任何影響,這就是深拷貝的魔力。木易楊情況下,轉(zhuǎn)換結(jié)果不正確。 一、賦值(Copy) 賦值是將某一數(shù)值或?qū)ο筚x給某個(gè)變量的過(guò)程,分為下面 2 部分 基本數(shù)據(jù)類型:賦值,賦值之后兩個(gè)變量互不影響 引用數(shù)據(jù)類型:賦址,兩個(gè)...

    silvertheo 評(píng)論0 收藏0
  • 拷貝拷貝的區(qū)別

    摘要:淺拷貝與深拷貝一數(shù)據(jù)類型數(shù)據(jù)分為基本數(shù)據(jù)類型,和對(duì)象數(shù)據(jù)類型。淺拷貝是按位拷貝對(duì)象,它會(huì)創(chuàng)建一個(gè)新對(duì)象,這個(gè)對(duì)象有著原始對(duì)象屬性值的一份精確拷貝。對(duì)于字符串?dāng)?shù)字及布爾值來(lái)說(shuō)不是或者對(duì)象,會(huì)拷貝這些值到新的數(shù)組里。 淺拷貝與深拷貝 一、數(shù)據(jù)類型數(shù)據(jù)分為基本數(shù)據(jù)類型(String, Number, Boolean, Null, Undefined,Symbol)和對(duì)象數(shù)據(jù)類型。 基本數(shù)據(jù)類...

    jsyzchen 評(píng)論0 收藏0
  • 拷貝拷貝

    摘要:二淺拷貝與深拷貝深拷貝和淺拷貝是只針對(duì)和這樣的引用數(shù)據(jù)類型的。淺拷貝是按位拷貝對(duì)象,它會(huì)創(chuàng)建一個(gè)新對(duì)象,這個(gè)對(duì)象有著原始對(duì)象屬性值的一份精確拷貝。對(duì)于字符串?dāng)?shù)字及布爾值來(lái)說(shuō)不是或者對(duì)象,會(huì)拷貝這些值到新的數(shù)組里。 一、數(shù)據(jù)類型 數(shù)據(jù)分為基本數(shù)據(jù)類型(String, Number, Boolean, Null, Undefined,Symbol)和對(duì)象數(shù)據(jù)類型。 基本數(shù)據(jù)類型的特點(diǎn):直...

    hzc 評(píng)論0 收藏0
  • 拷貝拷貝

    摘要:二淺拷貝與深拷貝深拷貝和淺拷貝是只針對(duì)和這樣的引用數(shù)據(jù)類型的。淺拷貝是按位拷貝對(duì)象,它會(huì)創(chuàng)建一個(gè)新對(duì)象,這個(gè)對(duì)象有著原始對(duì)象屬性值的一份精確拷貝。對(duì)于字符串?dāng)?shù)字及布爾值來(lái)說(shuō)不是或者對(duì)象,會(huì)拷貝這些值到新的數(shù)組里。 一、數(shù)據(jù)類型 數(shù)據(jù)分為基本數(shù)據(jù)類型(String, Number, Boolean, Null, Undefined,Symbol)和對(duì)象數(shù)據(jù)類型。 基本數(shù)據(jù)類型的特點(diǎn):直...

    史占廣 評(píng)論0 收藏0
  • 入JavaScript中拷貝和淺拷貝

    摘要:深拷貝和淺拷貝問(wèn)題的本質(zhì)還是不同數(shù)據(jù)類型的存儲(chǔ)方式差異,尤其是引用數(shù)據(jù)類型的特殊。 深拷貝和淺拷貝問(wèn)題的本質(zhì)還是不同數(shù)據(jù)類型的存儲(chǔ)方式差異,尤其是引用數(shù)據(jù)類型的特殊。showImg(https://segmentfault.com/img/bVbb8XH?w=1058&h=409); 現(xiàn)分別對(duì)賦值、淺拷貝、深拷貝做深入研究: 1.賦值 原理:直接將對(duì)象指針直接賦值給另一個(gè)變量 代碼: ...

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

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

0條評(píng)論

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