{"ScriptPreparationCode":null,"TestCases":[{"Name":"Concat","Code":"[\u0027foo\u0027, 1, true].concat([\u0027bar\u0027, 2, false])","IsDeferred":false},{"Name":"Merge objects mannualy","Code":"let object1 = {a: 1, b: 2, c: {d: 4}};\r\nlet object2 = {e: 1, f: 2, c: {d: 4}};\r\nobject1.e = object2.e;\r\nobject1.f = object2.f;\r\nobject1.c = object2.c;","IsDeferred":false},{"Name":"Merge objects by Object.assign no clone","Code":"let object1 = {a: 1, b: 2, c: {d: 4}};\r\nlet object2 = {e: 1, f: 2, c: {d: 4}};\r\nlet result = Object.assign(object1, object2);","IsDeferred":false},{"Name":"Merge objects by Object.assign","Code":"let object1 = {a: 1, b: 2, c: {d: 4}};\r\nlet object2 = {e: 1, f: 2, c: {d: 4}};\r\nlet result = Object.assign({}, object1, object2);","IsDeferred":false},{"Name":"Merge objects by spread","Code":"let object1 = {a: 1, b: 2, c: {d: 4}};\r\nlet object2 = {e: 1, f: 2, c: {d: 4}};\r\nlet result = {...object1, ...object2};","IsDeferred":false},{"Name":"Clone object by Object.assign","Code":"let object = {a: 1, b: 2, c: {d: 4}};\r\nlet result = Object.assign({}, object);","IsDeferred":false},{"Name":"Clone object by spread","Code":"let object = {a: 1, b: 2, c: {d: 4}};\r\nlet result = {...object};","IsDeferred":false},{"Name":"Clone array by slice","Code":"[1,2,3,4,5,6].slice()","IsDeferred":false},{"Name":"Add two fields to object by spread ","Code":"let object = {a: 1, b: 2, c: {d: 4}};\r\nlet field1 = 10;\r\nlet field2 = 11;\r\nobject = {...object, ...{field2, field: field1}}","IsDeferred":false},{"Name":"Clone array by spread","Code":"[...[1,2,3,4,5,6]]","IsDeferred":false},{"Name":"Array to arguments by apply","Code":"const array = [1,2,3,4,5];\r\nMath.max.apply(null, array)","IsDeferred":false},{"Name":"Array to arguments by spread","Code":"const array = [1,2,3,4,5];\r\nMath.max(...array)","IsDeferred":false},{"Name":"Add two elements to array by push","Code":"let array1 = [\u0027foo\u0027, 1, true];\r\narray1.push(1);\r\narray1.push(2);","IsDeferred":false},{"Name":"Add two elements to array by spread","Code":"let array1 = [\u0027foo\u0027, 1, true];\r\narray1 = [1, 2, ...array1];","IsDeferred":false},{"Name":"Add two elements to array by concat","Code":"let array1 = [\u0027foo\u0027, 1, true];\r\narray1 = array1.concat([1, 2]);","IsDeferred":false},{"Name":"Concat by push","Code":"let result = [];\r\nlet array1 = [\u0027foo\u0027, 1, true];\r\nlet array2 = [\u0027bar\u0027, 2, false];\r\narray1.forEach(function(e){result.push(e)})\r\narray2.forEach(function(e){result.push(e)})","IsDeferred":false},{"Name":"Concat by spread","Code":"[...[\u0027foo\u0027, 1, true], ...[\u0027bar\u0027, 2, false]]","IsDeferred":false},{"Name":"Array to arguments by apply manually","Code":"const array = [1,2,3,4,5];\r\nMath.max(array[0], array[1], array[2], array[3], array[4])","IsDeferred":false},{"Name":"Add two fields to object mannualy","Code":"let object = {a: 1, b: 2, c: {d: 4}};\r\nlet field1 = 10;\r\nlet field2 = 11;\r\nobject.field = field1;\r\nobject.field2 = field2;","IsDeferred":false}]}