最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript基于遍歷操作實(shí)現(xiàn)對(duì)象深拷貝功能示例

 更新時(shí)間:2019年03月05日 10:33:07   作者:白楊-M  
這篇文章主要介紹了JavaScript基于遍歷操作實(shí)現(xiàn)對(duì)象深拷貝功能,涉及javascript元素遍歷與屬性操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了JavaScript基于遍歷操作實(shí)現(xiàn)對(duì)象深拷貝功能。分享給大家供大家參考,具體如下:

function getType(o){
  var _t;
  return ((_t = typeof(o)) == "object" ? o==null && "null" || Object.prototype.toString.call(o).slice(8,-1):_t).toLowerCase();
}
function extend(destination,source){
  for(var p in source){
    if(getType(source[p])=="array"||getType(source[p])=="object"){
      destination[p]=getType(source[p])=="array"?[]:{};
      arguments.callee(destination[p],source[p]);
    }else{
      destination[p]=source[p];
    }
  }
}
var test={
  a:"ss",
  b:"dd",
  c:[
    {d:"css",e:"cdd"},
    {
      m:"ff",
      n:[
        {kk:"11",jj:"22"},
        {ll:"44"}
      ]
    }
  ]
};
var test1={};
extend(test1,test);
console.log(test);
console.log(test1);
test1.c[1].n[0].kk="change"; //改變test1的c屬性對(duì)象的d屬性
console.log(test);
console.log(test1);
console.log(test.c[1].n[0]);
console.log(test1.c[1].n[0]);

測(cè)試結(jié)果

從測(cè)試結(jié)果可以看到,通過使用這個(gè)遍歷的方法,成功將對(duì)象test深拷貝復(fù)制一份,得到test1。并且更改test1對(duì)象的屬性,并不會(huì)對(duì)test對(duì)象產(chǎn)生影響。

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

仙居县| 玉山县| 昔阳县| 泸西县| 吉隆县| 区。| 修武县| 四川省| 江达县| 天门市| 襄汾县| 闽清县| 余江县| 佛坪县| 嘉祥县| 垫江县| 和平区| 扎鲁特旗| 湖南省| 怀柔区| 河西区| 泽州县| 科技| 基隆市| 南丰县| 大丰市| 邓州市| 瓦房店市| 禄劝| 柏乡县| 镇远县| 竹溪县| 崇信县| 鞍山市| 江津市| 六盘水市| 新绛县| 桂平市| 阿瓦提县| 深州市| 陆川县|