#53实现相对完备的深拷贝方法

BetaSuBetaSu2022/04/12

要实现的功能

实现一个深拷贝方法,特别注意需要支持如下数据结构:

  • 支持Date

  • 支持Symbol

  • 支持Function

  • 支持RegExp

  • 对于环状引用不会报错

环状引用参考如下数据结构:

const a = {};
a.a = a;

代码示例

function deepClone(obj) {
 // ...实现
}

最佳答案评选标准

  1. 请写出实现思路、代码,并为代码的关键步骤增写注释
  2. 附带测试用例是加分项
  3. 不需要考虑异常发生
  4. 不过度设计,代码简洁优雅是加分项

最佳答案

Chorer的回答

答题同学须知

  • 答题规范:请在一次评论中完成作答,后续修改也请编辑该评论,而不是追加新的评论

  • 评选标准:最佳答案由围观同学👍卡颂共同决定

  • 评选时间:一般是问题发布24小时后评选,如果问题发布当天回答数较少,问题悬赏金额可能增加,同时悬赏时间也会增加

围观同学须知

  • 对于你满意的答案,请不要吝惜你的 👍,这是评选最佳答案的依据

  • 非答题的评论会被删除,问题相关讨论请在赏金猎人群中进行