{"ScriptPreparationCode":"var examples = [];\r\nfor(let i = 0; i \u003C 100; i\u002B\u002B) {\r\n examples.push({\r\n attr: \u0022Hello\u0022,\r\n });\r\n}\r\n\r\nfunction innerFn(obj) {\r\n function hasAttr(obj) {\r\n return typeof obj === \u0022object\u0022 \u0026\u0026 \u0022attr\u0022 in obj;\r\n }\r\n if(hasAttr(obj)) return obj.attr \u002B \u0022 world!\u0022;\r\n else return null;\r\n}\r\n\r\nfunction hasAttr(obj) {\r\n return typeof obj === \u0022object\u0022 \u0026\u0026 \u0022attr\u0022 in obj;\r\n}\r\n\r\nfunction outerFn(obj) {\r\n if(hasAttr(obj)) return obj.attr \u002B \u0022 world!\u0022;\r\n else return null;\r\n}","TestCases":[{"Name":"Local Function","Code":"for(const example of examples) {\r\n console.log(innerFn(example));\r\n}","IsDeferred":false},{"Name":"Global Function","Code":"for(const example of examples) {\r\n console.log(outerFn(example));\r\n}","IsDeferred":false}]}