冴羽

Results 473 comments of 冴羽

@yunlzhang 感谢指出,现在的 deepCopy 方法确实有这个问题 ```js deepCopy({ value: null }) ``` 的值为: ```js {value: {}} ``` 这篇的目的在于讲解深浅拷贝的概念以及深浅拷贝的思路,下一篇 [《JavaScript专题之从零实现jQuery的extend》](https://github.com/mqyqingfeng/Blog/issues/33) 才是讲解深浅拷贝的详细实现,在下一篇的 extend 方法就有对于 null 的处理~

@mengxin-FE javaScript 我还有很多地方需要研究,倒不算透彻,不过谢谢夸奖哈~ 如果说学习方法的话,就是确定一个要研究的主题,然后大量阅读该主题相关的文章,尽量保证每篇文章都能理解,如果不能理解,第二天再看一遍,直到看懂为止,如果可以的话,再写写文章,将学到的知识梳理出来,与大家分享~

@Tvinsh 确实可以,感谢分享哈~

@naihe138 非常感谢补充,o( ̄▽ ̄)d JSON.stringify 这部分确实写得太浅薄了。

@veedrin 可以,只是不知道为什么,我觉得怪怪的,好像一般不会这样描述……

@JHanLu 这个可以参照下一篇 extend 的实现方式 [https://github.com/mqyqingfeng/Blog/issues/33](https://github.com/mqyqingfeng/Blog/issues/33)

@UNDERCOVERj 确实没有考虑这些场景,不过常遇到的场景都是普通对象的拷贝,这样的也够了~

@ishowman 函数的复制是一个很难解决的问题呀,即使是 jQuery 的 extend 也没有去处理函数……

@youzaiyouzai666 感谢分享呀~ 这些都是 ES6 提供的很好的方法~

@Fiv5 下一篇 [https://github.com/mqyqingfeng/Blog/issues/33](https://github.com/mqyqingfeng/Blog/issues/33) 就涉及了深拷贝中的循环引用问题,不过处理的是 ```js var a = {name : b}; var b = {name : a} var c = extend(a, b); console.log(c); ``` 这种情况下导致的循环引用的问题,处理的思路是目标属性值和要复制的对象的属性值的引用是否相同,具体可以参见下一篇文章中的代码,对于本身就是循环引用的对象,正好评论中也有人提及了处理的方式,也可以参考一下~