{"ScriptPreparationCode":"function dec2hex (dec) {\r\n return (\u00270\u0027 \u002B dec.toString(16)).substr(-2)\r\n}\r\n\r\nfunction generateId (len) {\r\n var arr = new Uint8Array((len || 40) / 2)\r\n window.crypto.getRandomValues(arr)\r\n return Array.from(arr, dec2hex).join(\u0027\u0027)\r\n}\r\n\r\nvar obj = {};\r\n\r\nfor (var i=0; i\u003C10000; i\u002B\u002B) {\r\n var id = generateId(20)\r\n obj[id] = i;\r\n}","TestCases":[{"Name":"lodash.each","Code":"_.each(obj, function(v, k) {})","IsDeferred":false},{"Name":"lodash.map","Code":"_.map(obj, function(v, k) {})","IsDeferred":false},{"Name":"Object.entries.map","Code":"Object.entries(obj).map(function([k, v]) {})","IsDeferred":false},{"Name":"Object.entries \u002B for","Code":"const entries = Object.entries(obj);\r\nfor (let i = 0; i \u003C entries.length; i\u002B\u002B) { const [k, v] = entries[i]; }","IsDeferred":false},{"Name":"Object.entries \u002B for..of","Code":"for (let [k, v] of Object.entries(obj)) {\r\n //\r\n}","IsDeferred":false},{"Name":"forEach","Code":"Object.keys(obj).forEach(function (k) {\r\n let v = obj[k];\r\n //\r\n});","IsDeferred":false},{"Name":"for..in","Code":"for (const k in obj) {\r\n if (obj.hasOwnProperty(k)) {\r\n let v = obj[k];\r\n }\r\n}","IsDeferred":false},{"Name":"lodash.forOwn","Code":"_.forOwn(obj, function(v, k) {\r\n //\r\n});","IsDeferred":false}]}