{"ScriptPreparationCode":"\u0022use strict\u0022;\r\n// Welcome to the TypeScript Playground, this is a website\r\n// which gives you a chance to write, share and learn TypeScript.\r\n// You could think of it in three ways:\r\n//\r\n// - A location to learn TypeScript where nothing can break\r\n// - A place to experiment with TypeScript syntax, and share the URLs with others\r\n// - A sandbox to experiment with different compiler features of TypeScript\r\n\r\n\r\n\r\n\r\n","TestCases":[{"Name":"TS enum","Code":"var Foo;\r\n(function (Foo) {\r\n Foo[Foo[\u0022FOO\u0022] = 0] = \u0022FOO\u0022;\r\n Foo[Foo[\u0022BAR\u0022] = 1] = \u0022BAR\u0022;\r\n Foo[Foo[\u0022BAZ\u0022] = 2] = \u0022BAZ\u0022;\r\n})(Foo || (Foo = {}));\r\nlet enum_foo_count = 0;\r\nlet enum_bar_count = 0;\r\nlet enum_baz_count = 0;\r\n\r\nvar getRandomEnum = () =\u003E {\r\n const r = Math.random();\r\n if (r \u003C 1 / 3)\r\n return Foo.FOO;\r\n if (r \u003C 2 / 3)\r\n return Foo.BAR;\r\n return Foo.BAZ;\r\n};\r\n\r\nfor (let i = 0; i \u003C 100000; i\u002B\u002B) {\r\n switch (getRandomEnum()) {\r\n case Foo.FOO:\r\n enum_foo_count\u002B\u002B;\r\n break;\r\n case Foo.BAR:\r\n enum_bar_count\u002B\u002B;\r\n break;\r\n case Foo.BAZ:\r\n enum_baz_count\u002B\u002B;\r\n break;\r\n }\r\n}","IsDeferred":false},{"Name":"String constants","Code":"let string_foo_count = 0;\r\nlet string_bar_count = 0;\r\nlet string_baz_count = 0;\r\n\r\n\r\nvar getRandomStr = () =\u003E {\r\n const r = Math.random();\r\n if (r \u003C 1 / 3)\r\n return \u0022FOO\u0022;\r\n if (r \u003C 2 / 3)\r\n return \u0022BAR\u0022;\r\n return \u0022BAZ\u0022;\r\n};\r\n\r\nfor (let i = 0; i \u003C 100000; i\u002B\u002B) {\r\n switch (getRandomStr()) {\r\n case \u0022FOO\u0022:\r\n string_foo_count\u002B\u002B;\r\n break;\r\n case \u0022BAR\u0022:\r\n string_bar_count\u002B\u002B;\r\n break;\r\n case \u0022BAZ\u0022:\r\n string_baz_count\u002B\u002B;\r\n break;\r\n }\r\n}\r\n","IsDeferred":false}]}