javascript copia profunda utilizando JSON

Tengo un problema con el objeto javascript (matriz) copia profunda. Leí muchas buenas maneras de lidiar con eso. Y también sé que jQuery tiene $ .extend API para este problema. Pero mi pregunta es: ¿Puedo usar el método JSON de estratificación y análisis para resolver este problema?

Aquí está mi código:

function deepCopy(oldValue) { 
  var newValue
  strValue = JSON.stringify(oldValue)
  return newValue = JSON.parse(strValue)
}

var a = {
  b: 'b',
  c: [1,2,4],
  d: null
}

copy = deepCopy(a)

console.log(a === copy) // false
console.log(a.c === copy.c) // false

PD: He sabido que si no todos los objetos son serializables, pero la única situación que conozco es que cuando el objeto contiene una propiedad que es función. ¿Alguna otra situación?

Respuestas a la pregunta(2)

Su respuesta a la pregunta