javaScript 复制对象

川长思鸟来 2022-06-12 08:42 306阅读 0赞

现在先贴出javascript的深拷贝

  1. function deepCopy(p, c) {
  2. var c = c || {};
  3. for (var i in p) {
  4. if(! p.hasOwnProperty(i)){
  5. continue;
  6. }
  7. if (typeof p[i] === 'object') {
  8. c[i] = (p[i].constructor === Array) ? [] : {};
  9. deepCopy(p[i], c[i]);
  10. } else {
  11. c[i] = p[i];
  12. }
  13. }
  14. return c;
  15. }

比如有一下Class1类,新建了一个class1对象,

即:var class1 = new Class1();

如果希望复制class1对象,此时的步骤是:

  1. var clone = new Class1();
  2. var clone = deepCopy(class1, clone);

这样才能复制完整的对象!

发表评论

表情:
评论列表 (有 0 条评论,306人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JavaScript中的对象复制

    所有的面向对象的语言中,都存在着对象引用、复制等等问题,对于初学者来说可能难以理解。今天我来总结一下JavaScript中对象复制。 首先我们要知道JavaScript中的数

    相关 javascript 复制到剪贴板

    > 前言: > >        想实现一个点击复制事件,但是以前没有进行过相关操作.找了一些资料,多数是过时 或者 写的看不懂的.于是自己搞懂了之后在此分享自己的成果.

    相关 对象复制

    为什么要克隆 --------------------  克隆的对象可能包含一些已经修改过的属性,而new出来的对象的属性都还是初始化时候的值,所以当需要一个新的对象来

    相关 golang 复制对象

    需求   实际运用种,传参是一对象指针,现在如何最简便地复制一对象? 实现 错误方法:&\  先拿到值再指针? package main i