{"ScriptPreparationCode":"var MyObject = {\r\n description: \u0027a\u0027,\r\n myNumber: 123456789,\r\n myBoolean: true,\r\n child: {\r\n description: \u0027a\u0027,\r\n myNumber: 123456789,\r\n myBoolean: true,\r\n child_again: {\r\n description: \u0027a\u0027,\r\n myNumber: 123456789,\r\n myBoolean: true,\r\n },\r\n },\r\n};\r\n\r\nvar myCopy = null;","TestCases":[{"Name":"Lodash cloneDeep","Code":"myCopy = _.cloneDeep(MyObject);\r\nmyCopy.child.child_again.myBoolean = false","IsDeferred":false},{"Name":"Spread operator","Code":"myCopy = {\r\n ...MyObject, \r\n child: {\r\n \t...MyObject.child,\r\n \tchild_again: {\r\n \t\t...MyObject.child.child_again,\r\n \t\tmyBoolean: false,\r\n\t}\r\n }\r\n};","IsDeferred":false}]}