{"ScriptPreparationCode":"data = {};\r\nconst ITERATIONS = 10_000;\r\nfor (i = 0; i \u003C ITERATIONS; \u002B\u002Bi) {\r\n data[i] = Math.random();\r\n}\r\n\r\nfunction switcher(i) {\r\n return i \u003C 0.5 ? i : i.toString();\r\n}","TestCases":[{"Name":"Object.entries -\u003E map -\u003E Object.fromEntries","Code":"Object.fromEntries(Object.entries(data).map((key, value) =\u003E [key, switcher(value)]));","IsDeferred":false},{"Name":"Object.entries -\u003E reduce (single object)","Code":"Object.entries(data).reduce((acc, [k, v]) =\u003E {\r\n acc[k] = switcher(v)\r\n return acc;\r\n}, {});","IsDeferred":false},{"Name":"Object.entries -\u003E map -\u003E reduce (single object)","Code":"Object.entries(data).map(([k, v]) =\u003E [k, switcher(v)]).reduce((acc, [k, v]) =\u003E {\r\n acc[k] = v\r\n return acc;\r\n}, {});","IsDeferred":false},{"Name":"Object.entries -\u003E reduce (temporary objects)","Code":"Object.entries(data).reduce((acc, [k, v]) =\u003E ({\r\n ...acc,\r\n [k]: switcher(v)\r\n}), {});","IsDeferred":false},{"Name":"Object.entries -\u003E map -\u003E reduce (temporary objects)","Code":"Object.entries(data).map(([k, v]) =\u003E [k, switcher(v)]).reduce((acc, [k, v]) =\u003E ({\r\n ...acc,\r\n [k]: v\r\n}), {});","IsDeferred":false},{"Name":"new map -\u003E loop over object.entries -\u003E Object.fromEntries","Code":"m = new Map(Object.entries(data))\r\nfor([k, v] of Object.entries(data)) {\r\n const newV = switcher(v);\r\n if (newV !== v) {\r\n m.set(k, newV);\r\n }\r\n}\r\nObject.fromEntries(m)","IsDeferred":false}]}