{"ScriptPreparationCode":"function set(object, path, value) {\r\n if (path in object) {\r\n object[path] = value;\r\n return;\r\n }\r\n\r\n path = path.split(\u0027.\u0027);\r\n //extract last item and store it\r\n const lastProp = path.pop();\r\n if (path.length) {\r\n let obj = object;\r\n let prop;\r\n for (prop of path) {\r\n if (prop in obj) {\r\n obj = obj[prop];\r\n } else {\r\n return;\r\n }\r\n }\r\n obj[lastProp] = value;\r\n }\r\n}\r\n\r\nvar testObject = {\r\n\ta: {\r\n \tb: 1\r\n }\r\n}","TestCases":[{"Name":"lodash set","Code":"_.set(testObject, \u0027a.b\u0027, 2)","IsDeferred":false},{"Name":"custom set","Code":"set(testObject, \u0027a.b\u0027, 2)","IsDeferred":false}]}