{"ScriptPreparationCode":"var propertyNames1 = Array.from({\r\n length: 1000\r\n}).map((_, i) =\u003E \u0060props${i}\u0060)\r\nvar propertyNames2 = Array.from({\r\n length: 1000\r\n}).map((_, i) =\u003E \u0060props${i\u002B1000}\u0060)\r\n\r\n\r\nvar firstObject = {};\r\n\r\nfor (const propertyName of propertyNames1) {\r\n firstObject[propertyName] = propertyName;\r\n}\r\n\r\n\r\nvar secondObject = {};\r\n\r\nfor (const propertyName of propertyNames2) {\r\n secondObject[propertyName] = propertyName;\r\n}","TestCases":[{"Name":"Using the spread operator","Code":"const finalObject = {\r\n\t...firstObject,\r\n \t...secondObject\r\n};","IsDeferred":false},{"Name":"Using Object.assign","Code":"const finalObject = Object.assign({}, firstObject, secondObject);","IsDeferred":false},{"Name":"Using assignment","Code":"const finalObject = {};\r\n\r\nfor (const key in firstObject) {\r\n finalObject[key] = firstObject[key];\r\n}\r\n\r\nfor (const key in secondObject) {\r\n finalObject[key] = secondObject[key];\r\n}\r\n","IsDeferred":false}]}