{"ScriptPreparationCode":"var testArray = [{\r\n description: \u0027Random description.\u0027,\r\n testNumber: 123456789,\r\n testBoolean: true,\r\n testObject: {\r\n testString: \u0027test string\u0027,\r\n testNumber: 12345\r\n },\r\n testArray: [{\r\n myName: \u0027test name\u0027,\r\n myNumber: 123245\r\n }]\r\n},{\r\n description: \u0027Random description.\u0027,\r\n testNumber: 123456789,\r\n testBoolean: true,\r\n testObject: {\r\n testString: \u0027test string\u0027,\r\n testNumber: 12345\r\n },\r\n testArray: [{\r\n myName: \u0027test name\u0027,\r\n myNumber: 123245\r\n }]\r\n}];\r\n\r\nvar testCopy = null;","TestCases":[{"Name":"Lodash clone","Code":"testCopy = _.clone(testArray);","IsDeferred":false},{"Name":"Native concat","Code":"testCopy = [].concat(testArray);","IsDeferred":false},{"Name":"Native unshift","Code":"testCopy = [];\r\nfor (var i = testArray.length; i--;) {\r\n testCopy.unshift(testArray[i]);\r\n}","IsDeferred":false},{"Name":"Native Stringify","Code":"testCopy = JSON.parse(JSON.stringify(testArray));","IsDeferred":false},{"Name":"Native slice","Code":"testCopy = testArray.slice();","IsDeferred":false},{"Name":"Native slice at 0","Code":"testCopy = testArray.slice(0);","IsDeferred":false},{"Name":"While Loop","Code":"testCopy = [];\r\ni = testArray.length;\r\nwhile(i--) testCopy[i] = testArray[i];","IsDeferred":false}]}