{"ScriptPreparationCode":"var arrayToCopy = [ \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022, \u0022hello\u0022 ];","TestCases":[{"Name":"Array.concat","Code":"var shallowCopy = arrayToCopy.concat();","IsDeferred":false},{"Name":"Array.slice","Code":"var shallowCopy = arrayToCopy.slice();","IsDeferred":false},{"Name":"For loop","Code":"var shallowCopy = [];\r\nfor (let i = 0; i \u003C arrayToCopy.length; \u002B\u002Bi)\r\n{\r\n shallowCopy.push(arrayToCopy[i]);\r\n}","IsDeferred":false},{"Name":"For loop with declared length","Code":"var shallowCopy = [];\r\nvar arrayLength = arrayToCopy.length;\r\nfor (let i = 0; i \u003C arrayLength; \u002B\u002Bi)\r\n{\r\n shallowCopy.push(arrayToCopy[i]);\r\n}","IsDeferred":false},{"Name":"While loop","Code":"var shallowCopy = [];\r\nlet i = arrayToCopy.length - 1;\r\nwhile (i--)\r\n{\r\n shallowCopy.push(arrayToCopy[i]);\r\n}","IsDeferred":false},{"Name":"Spread operator","Code":"var shallowCopy = [...arrayToCopy];","IsDeferred":false},{"Name":"Slice with begin argument","Code":"var shallowCopy = arrayToCopy.slice(0);","IsDeferred":false},{"Name":"Slice with begin and end argument","Code":"var shallowCopy = arrayToCopy.slice(0, arrayToCopy.length);","IsDeferred":false}]}