{"ScriptPreparationCode":"var result = \u0027\u0027;\r\n\r\nvar data = {\r\n data: [\r\n {\r\n user: {\r\n location: {\r\n address: {\r\n street: \u0027main street\u0027,\r\n },\r\n },\r\n },\r\n \r\n },\r\n ],\r\n};\r\n\r\nconst iterations = 100;","TestCases":[{"Name":"get existing property","Code":"for (let i = 0; i \u003C 100; i \u002B= 1) {\r\n\tresult = _.get(data, \u0027data.0.user.location.address.street\u0027, \u0027\u0027);\r\n}","IsDeferred":false},{"Name":"null coalescing existing property","Code":"for (let i = 0; i \u003C 100; i \u002B= 1) {\r\n\tresult = data?.data?.[0]?.user?.location?.address?.street ?? \u0027\u0027;\r\n}","IsDeferred":false},{"Name":"get non existing property","Code":"for (let i = 0; i \u003C 100; i \u002B= 1) {\r\n\tresult = _.get(data, \u0027data.0.user.location.address.zip\u0027, \u0027\u0027);\r\n}","IsDeferred":false},{"Name":"null coalescing non existing property","Code":"for (let i = 0; i \u003C 100; i \u002B= 1) {\r\n\tresult = data?.data?.[0]?.user?.location?.address?.zip ?? \u0027\u0027;\r\n}","IsDeferred":false}]}