{"ScriptPreparationCode":"var obj = {\r\n\ta: 1,\r\n b: 2,\r\n\tc: 3,\r\n\td: 4,\r\n\t0: \u0027a\u0027,\r\n \t1: \u0027b\u0027,\r\n \tstr: \u0027long string\u0027,\r\n\tnested: {\r\n \tnested: 0\r\n },\r\n\thello: 55.5\r\n};","TestCases":[{"Name":"Object.entries","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let entries = Object.entries(obj), i = entries.length - 1; i \u003E= 0; i--) {\r\n\t\tconsole.log(entries[i])\r\n } \r\n}\r\n\r\n","IsDeferred":false},{"Name":"for..in","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let key in obj) {\r\n\t\tif (obj.hasOwnProperty(key)) {\r\n \tconsole.log([key, obj[key]])\r\n }\r\n } \r\n}","IsDeferred":false},{"Name":"Object.keys","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let keyArray = Object.keys(obj), i = keyArray.length - 1, key = keyArray[i]; i \u003E= 0; key = keyArray[--i]) {\r\n console.log([key, obj[key]]);\r\n }\r\n}","IsDeferred":false},{"Name":"Object.keys no entry","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let keyArray = Object.keys(obj), i = keyArray.length - 1, key = keyArray[i]; i \u003E= 0; key = keyArray[--i]) {\r\n console.log(key, obj[key]);\r\n }\r\n}","IsDeferred":false},{"Name":"for..in no array","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let key in obj) {\r\n\t\tif (obj.hasOwnProperty(key)) {\r\n \tconsole.log(key, obj[key])\r\n }\r\n } \r\n}","IsDeferred":false},{"Name":"Object.entries no array","Code":"for (let i = 0; i \u003C 10000; i\u002B\u002B) {\r\n\tfor (let entries = Object.entries(obj), i = entries.length - 1, entry = entries[i]; i \u003E= 0; entry = entries[i--]) {\r\n\t\t\r\n\t\tconsole.log(entry[0], entry[1])\r\n } \r\n}","IsDeferred":false}]}