{"ScriptPreparationCode":"var firstObject = { sampleData: \u0027Hello world\u0027, sampleData2: \u0027Hello world\u0027, sampleData3: \u0027Hello world\u0027,sampleData4: \u0027Hello world\u0027 };\r\nvar secondObject = { moreData: \u0027foo bar\u0027,moreData2: \u0027foo bar\u0027,moreData3: \u0027foo bar\u0027,moreData4: \u0027foo bar\u0027 };\r\n\r\nvar unit = {\u0022name\u0022:\u0022New unit gg sfsd wefwe f ss2223 g\u0022,\u0022unitType\u0022:1,\u0022users\u0022:[],\u0022centralCheckLists\u0022:[],\u0022unitScheduling\u0022:{\u0022dailyActivities\u0022:[{\u0022activeDayOfWeek\u0022:1,\u0022activeFromHour\u0022:\u002206:00\u0022,\u0022activeToHour\u0022:\u002222:00\u0022,\u0022endOfDay\u0022:\u002200:00\u0022,\u0022activeOffset\u0022:false},{\u0022activeDayOfWeek\u0022:2,\u0022activeFromHour\u0022:\u002206:00\u0022,\u0022activeToHour\u0022:\u002222:00\u0022,\u0022endOfDay\u0022:\u002200:00\u0022,\u0022activeOffset\u0022:false},{\u0022activeDayOfWeek\u0022:3,\u0022activeFromHour\u0022:\u002206:00\u0022,\u0022activeToHour\u0022:\u002222:00\u0022,\u0022endOfDay\u0022:\u002200:00\u0022,\u0022activeOffset\u0022:false},{\u0022activeDayOfWeek\u0022:4,\u0022activeFromHour\u0022:\u002211:00\u0022,\u0022activeToHour\u0022:\u002222:00\u0022,\u0022endOfDay\u0022:\u002200:00\u0022,\u0022activeOffset\u0022:false},{\u0022activeDayOfWeek\u0022:5,\u0022activeFromHour\u0022:\u002223:00\u0022,\u0022activeToHour\u0022:\u002222:00\u0022,\u0022endOfDay\u0022:\u002200:00\u0022,\u0022activeOffset\u0022:false}],\u0022excludedDates\u0022:[]},\u0022documentType\u0022:6,\u0022revisionId\u0022:4,\u0022id\u0022:\u0022b99bff7d-9f54-42ea-8b0a-a02827a58d3b\u0022,\u0022tenantId\u0022:\u002211211c12-455e-4c2f-827b-beb180e33b54\u0022,\u0022createdByUserId\u0022:null,\u0022lastModifiedUserId\u0022:null,\u0022isDeleted\u0022:false,\u0022_etag\u0022:\u0022\\\u002202007ee4-0000-0d00-0000-5d550fdc0000\\\u0022\u0022};\r\nvar data = {name:\u0022New name\u0022, unitScheduling:{}};\r\n\r\nfunction generateFields(user, data){\r\n const baseUnitScheduling = {\r\n excludedDates: [],\r\n dailyActivities: ([1, 2, 3, 4, 5]).map(day =\u003E ({\r\n activeDayOfWeek: day,\r\n activeToHour: \u002722:00\u0027,\r\n activeFromHour: \u002706:00\u0027,\r\n activeOffset: false,\r\n })),\r\n };\r\n\r\n const unitScheduling = user.unitScheduling || data.unitScheduling || baseUnitScheduling;\r\n\r\n unitScheduling.dailyActivities = unitScheduling.dailyActivities || baseUnitScheduling.dailyActivities;\r\n unitScheduling.excludedDates = unitScheduling.excludedDates || baseUnitScheduling.excludedDates;\r\n\r\n return {\r\n unitScheduling,\r\n users: user.users || data.users || [],\r\n centralCheckLists: user.centralCheckLists || data.centralCheckLists || [],\r\n };\r\n }","TestCases":[{"Name":"Using the spread operator","Code":"const finalObject ={\r\n ...unit,\r\n ...data,\r\n ...generateFields(unit, data),\r\n }","IsDeferred":false},{"Name":"Using Object.assign","Code":"const finalObject = Object.assign(unit, data, generateFields(unit, data));","IsDeferred":false},{"Name":"Empty object assign","Code":"const finalObject = Object.assign({}, unit, data, generateFields(unit, data))","IsDeferred":false}]}