考虑:
enum Colors {
Red,
Green,
Blue
}
Run Code Online (Sandbox Code Playgroud)
它转化为:
var Colors;
(function (Colors) {
Colors[Colors["Red"] = 0] = "Red";
Colors[Colors["Green"] = 1] = "Green";
Colors[Colors["Blue"] = 2] = "Blue";
})(Colors || (Colors = {}));
Run Code Online (Sandbox Code Playgroud)
有关此结果的大多数问题都在TypeScript中的Enums中得到解答:JavaScript代码在做什么?.
我引用答案:
这是一个'立即执行的功能'
更进一步的话题:
认为他们可能会去:
Run Code Online (Sandbox Code Playgroud)var Colors; Colors || (Colors = {}); Colors[Colors["Cyan"] = 3] = "Cyan"; // ...并跳过关闭,但也许我仍然缺少一些东西.
所以问题仍然存在:为什么将它包装在一个立即执行的函数中?