{"ScriptPreparationCode":"//set up\r\nvar abc = new Object()\r\nfor(var intCtr=0; intCtr\u003C1000; intCtr\u002B\u002B) {\r\n\tabc[intCtr\u002B\u0027\u0027] = Math.floor(Math.random() * Math.floor(10000))\r\n}","TestCases":[{"Name":"for in","Code":"var forInResult = 0;\r\nfor(var key in abc) {\r\n\tforInResult \u002B= abc[key]\r\n}","IsDeferred":false},{"Name":"for of","Code":"var forOfResult = 0;\r\nfor(var key of Object.keys(abc)) {\r\n\tforOfResult \u002B= abc[key]\r\n}","IsDeferred":false},{"Name":"for of optimised","Code":"var forOfKeys = Object.keys(abc);\r\nvar forOfKeysResult = 0;\r\nfor(var key of forOfKeys) {\r\n\tforOfKeysResult \u002B= abc[key];\r\n}","IsDeferred":false}]}