{"ScriptPreparationCode":"var obj = Array.from({ length: 10000 }).map((value, i) =\u003E i).reduce((val, v) =\u003E { val[v] = v; return val; }, {})","TestCases":[{"Name":"lodash.each","Code":"let res = 0\r\n_.each(obj, function(v,k) {\r\n res \u002B= v\r\n})","IsDeferred":false},{"Name":"native forEach w/ entries","Code":"var res = 0\r\nObject.entries(obj).forEach(function(v, k) {\r\n res \u002B= v\r\n})","IsDeferred":false},{"Name":"vanilla for-loop w/ Object.keys","Code":"var res = 0\r\nconst keys = Object.keys(obj)\r\nfor (let i = 0; i \u003C keys.length; i\u002B\u002B) {\r\n const v = obj[keys[i]]\r\n res \u002B= v\r\n}","IsDeferred":false},{"Name":"vanilla for-loop w/ Object.entries","Code":"var res = 0\r\nconst entries = Object.entries(obj)\r\nfor (let i = 0; i \u003C entries.length; i\u002B\u002B) {\r\n const [k, v] = entries[i]\r\n res \u002B= v\r\n}","IsDeferred":false},{"Name":"vanilla for-loop w/ Object.values (no keys)","Code":"var res = 0\r\nconst values = Object.values(obj);\r\nfor (let i = 0; i \u003C values.length; i\u002B\u002B){\r\n const v = values[i]\r\n res \u002B= v\r\n}","IsDeferred":false},{"Name":"native forEach w/ Object.values (no keys)","Code":"var res = 0\r\nObject.values(obj).forEach(function(v) {\r\n res \u002B= v\r\n})","IsDeferred":false},{"Name":"native for-in","Code":"var res = 0\r\nfor (const prop in obj) {\r\n if (obj.hasOwnProperty(prop)) {\r\n const v = obj[prop]\r\n res \u002B= v\r\n }\r\n}","IsDeferred":false},{"Name":"native for-of w/ Object.keys","Code":"var res = 0\r\nconst keys = Object.keys(obj)\r\nfor (let v of keys) {\r\n res \u002B= v\r\n}","IsDeferred":false},{"Name":"native for-of w/ Object.entries","Code":"var res = 0\r\nconst entries = Object.entries(obj)\r\nfor (let [k, v] of entries) {\r\n res \u002B= v\r\n}","IsDeferred":false},{"Name":"native for-of w/ Object.values (no keys)","Code":"var res = 0\r\nconst values = Object.values(obj)\r\nfor (let v of values) {\r\n res \u002B= v\r\n}","IsDeferred":false}]}