{"ScriptPreparationCode":"const createKeyTestThings = n =\u003E {\r\n const keys = []\r\n const map = new Map()\r\n const obj = {}\r\n const getConspicuousKey = seed =\u003E keys[Math.floor(seed * n)]\r\n\r\n for (let i = 0; i \u003C n; i\u002B\u002B) {\r\n const val = Math.random()\r\n const key = Math.random()\r\n keys.push(key)\r\n map.set(key, val)\r\n obj[key] = val\r\n }\r\n\r\n return {\r\n obj,\r\n map,\r\n getConspicuousKey\r\n }\r\n}\r\nconst largeN = 16384,\r\n smallN = 100,\r\n tinyN = 15\r\nconst large = createKeyTestThings(largeN)\r\nconst small = createKeyTestThings(smallN)\r\nconst tiny = createKeyTestThings(tinyN)","TestCases":[{"Name":"Map lookup - large","Code":"const { getConspicuousKey, map } = large\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = map.get(key)\r\n}","IsDeferred":false},{"Name":"Map lookup - small","Code":"const { getConspicuousKey, map } = small\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = map.get(key)\r\n}","IsDeferred":false},{"Name":"Map lookup - tiny","Code":"const { getConspicuousKey, map } = tiny\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = map.get(key)\r\n}","IsDeferred":false},{"Name":"Obj lookup - large","Code":"const { getConspicuousKey, obj } = large\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = obj[key]\r\n}","IsDeferred":false},{"Name":"Obj lookup - small","Code":"const { getConspicuousKey, obj } = small\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = obj[key]\r\n}","IsDeferred":false},{"Name":"Obj lookup - tiny","Code":"const { getConspicuousKey, obj } = tiny\r\nfor (let i=0; i\u003C1000; i\u002B\u002B) {\r\n let seed = Math.random()\r\n let key = getConspicuousKey(seed)\r\n a = obj[key]\r\n}","IsDeferred":false}]}