{"ScriptPreparationCode":"/*your preparation JavaScript code goes here\r\nTo execute async code during the script preparation, wrap it as function globalMeasureThatScriptPrepareFunction, example:*/\r\nasync function globalMeasureThatScriptPrepareFunction() {\r\n // This function is optional, feel free to remove it.\r\n // await someThing();\r\n}\r\nconst store = {\r\n _: null\r\n};\r\n\r\nfunction do_not_optimize(v) {\r\n store._ = v;\r\n}","TestCases":[{"Name":"Object literals","Code":"let obj = { a: 0, b: 0, c: 0, d: 0 };\r\ndo_not_optimize(obj);","IsDeferred":false},{"Name":"Object.create(null) and then set properties","Code":"let obj = Object.create(null);\r\nobj.a = 0;\r\nobj.b = 0;\r\nobj.c = 0;\r\nobj.d = 0;\r\ndo_not_optimize(obj)","IsDeferred":false},{"Name":"Object.create(null) with descriptors.","Code":"let obj = Object.create(null, {\r\n a: { value: 0, writable: true, enumerable: true, configurable: true },\r\n b: { value: 0, writable: true, enumerable: true, configurable: true },\r\n c: { value: 0, writable: true, enumerable: true, configurable: true },\r\n d: { value: 0, writable: true, enumerable: true, configurable: true }\r\n});\r\ndo_not_optimize(obj);","IsDeferred":false},{"Name":"new Object and then set properties","Code":"let obj = new Object();\r\nobj.a = 0;\r\nobj.b = 0;\r\nobj.c = 0;\r\nobj.d = 0;\r\ndo_not_optimize(obj);","IsDeferred":false},{"Name":"Object literals then set prototype to null","Code":"let obj = { a: 0, b: 0, c: 0, d: 0 };\r\nObject.setPrototypeOf(obj, null)\r\ndo_not_optimize(obj);","IsDeferred":false}]}