{"ScriptPreparationCode":"var obj1 = {\r\n foo: \u0027bar\u0027\r\n};\r\nvar obj0 = {};\r\n\r\nfunction isEmpty1(obj) {\r\n return !!obj \u0026\u0026 Object.keys(obj).length === 0 \u0026\u0026 obj.constructor === Object;\r\n}\r\n\r\nfunction isEmpty2(obj) {\r\n if (!obj || obj.constructor !== Object) {\r\n return false;\r\n }\r\n\r\n for (var key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n}","TestCases":[{"Name":"isEmpty1","Code":"var result1 = [];\r\nfor (let i = 0; i \u003C 100; i \u002B= 1) {\r\n result1[i] = i % 2 ? isEmpty1(obj1) : isEmpty1(obj0);\r\n}","IsDeferred":false},{"Name":"isEmpty2","Code":"var result2 = [];\r\nfor (let i = 0; i \u003C 100; i \u002B= 1) {\r\n result2[i] = i % 2 ? isEmpty2(obj1) : isEmpty2(obj0);\r\n}","IsDeferred":false}]}