Javascript deep clone

代码如下:

deepCopy: function(obj) {
  return _.isObject(obj) ? JSON.parse(JSON.stringify(obj)) : obj;
},


转载如下: 

粘贴过来格式就乱了: 原文在此:http://blog.sibo.me/2014/08/20/javascript-deep-clone.html

结论

深度克隆是一个复杂的任务,并没有一个完美的解决方案,要根据情况谨慎对待。

如果是简单场景,可以使用 JSON.parse(JSON.stringify(obj)) 完成。

如果自己完全知道对象的数据结构,手动克隆将是最稳妥也是最高效的方式。

参考

  1. http://stackoverflow.com/questions/7914968/cloning-whats-the-fastest-alternative-to-json-parsejson-stringifyx
  2. What is the difference between a deep copy and a shallow copy?
  3. Explanation of Deep and Shallow Copying
  4. Deep Copy vs JSON Stringify / JSON Parse
  5. What is the most efficient way to clone an object?

你可能感兴趣的:(Javascript deep clone)