{"ScriptPreparationCode":null,"TestCases":[{"Name":"Objects: Create and lookup","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet obj = {};\r\nfor(let key of ELEMENTS) {\r\n obj[key] = 1; \r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (key in obj) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\n","IsDeferred":false},{"Name":"Objects: Create lookup and delete","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet obj = {};\r\nfor(let key of ELEMENTS) {\r\n obj[key] = 1; \r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (key in obj) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\nfor(let key of ELEMENTS) {\r\n delete obj[key]; \r\n \r\n}\r\n\r\n","IsDeferred":false},{"Name":"Sets: Create and lookup","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet set = new Set();\r\nfor(let key of ELEMENTS) {\r\n set.add(key); \r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (set.has(key)) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\n","IsDeferred":false},{"Name":"Sets: Create, lookup and delete","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet set = new Set();\r\nfor(let key of ELEMENTS) {\r\n set.add(key); \r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (set.has(key)) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\nfor(let key of ELEMENTS) {\r\n set.delete(key); \r\n}\r\n\r\n\r\n","IsDeferred":false},{"Name":"Arrays: Create and lookup","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet arr = [];\r\n\r\nfor(let key of ELEMENTS) {\r\n if (arr.indexOf(key) === -1) {\r\n arr.push(key); \r\n }\r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (arr.indexOf(key) !== -1) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\n// reverse for delete test.\r\narr.reverse();","IsDeferred":false},{"Name":"Arrays: Create, lookup and delete","Code":"let ELEMENTS = [\u0022one\u0022, \u0022two\u0022, \u0022three\u0022, \u0022four\u0022, \u0022five\u0022];\r\n\r\nlet arr = [];\r\n\r\nfor(let key of ELEMENTS) {\r\n if (arr.indexOf(key) === -1) {\r\n arr.push(key); \r\n }\r\n}\r\n\r\nlet a = 0;\r\nfor(let key of ELEMENTS) {\r\n if (arr.indexOf(key) !== -1) {\r\n a\u002B\u002B; \r\n }\r\n}\r\n\r\n// reverse for delete test to hit worst case\r\narr.reverse();\r\n\r\nfor(let key of ELEMENTS) {\r\n let i = arr.indexOf(key);\r\n if (i !== -1) {\r\n arr[i] = arr[arr.length-1];\r\n arr.length -= 1;\r\n }\r\n}\r\n","IsDeferred":false}]}