Skip to content

Instantly share code, notes, and snippets.

@bartoszbobin
Created September 19, 2016 07:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bartoszbobin/557637e31ea8bece0d1f7ffc8bcf7d8e to your computer and use it in GitHub Desktop.
Save bartoszbobin/557637e31ea8bece0d1f7ffc8bcf7d8e to your computer and use it in GitHub Desktop.
TypeScript enum vs const enum
// TypeScript
const enum Beta { X, Y, Z }
const A : Beta = Beta.X;
// JavaScript
var Beta;
(function (Beta) {
Beta[Beta["X"] = 0] = "X";
Beta[Beta["Y"] = 1] = "Y";
Beta[Beta["Z"] = 2] = "Z";
})(Beta || (Beta = {}));
var A = 0 /* X */;
// TypeScript
enum Beta { X, Y, Z }
const A : Beta = Beta.X;
// JavaScript
var Beta;
(function (Beta) {
Beta[Beta["X"] = 0] = "X";
Beta[Beta["Y"] = 1] = "Y";
Beta[Beta["Z"] = 2] = "Z";
})(Beta || (Beta = {}));
var A = Beta.X;
@viko16
Copy link

viko16 commented May 17, 2019

It seems to be out of date now, const enum just output var A = 0 /* X */; 😄 (Works on TypeScript 3.4)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment