Como copiar o objeto JavaScript para a nova variável NOT por referência? [duplicado]
Esta questão já tem uma resposta aqui:
Qual é a maneira mais eficiente de clonar profundamente um objeto em JavaScript? 67 respostasEu escrevi um jsfiddle rápidoAqui, onde eu passo um pequeno objeto json para uma nova variável e modifico os dados da variável original (não a nova variável), mas os dados da nova variável também são atualizados. Isso deve significar que o objeto json foi passado por referência, certo?
Aqui está o meu código rápido:
var json_original = {one:'one', two:'two'}
var json_new = json_original;
console.log(json_original); //one, two
console.log(json_new); //one, two
json_original.one = 'two';
json_original.two = 'one';
console.log(json_original); //two, one
console.log(json_new); //two, one
Existe uma maneira de fazer uma cópia profunda de um objeto json para que modificar a variável original não modifique a nova variável?