'var' and 'let' in Typescript 1.5
在typescript中使用"var"或"let"有什么区别?我知道"let"允许将变量进一步定义为一个范围,而不在所述范围之外使用它。对于for循环中的迭代器来说,这显然是一个很好的优势。我知道这是一个ES6定义,所以编译到ES6应该在"var"和"let"方面看起来几乎相同。
但是,当它编译成不支持"let"的ES5javascript时,到底发生了什么?编译器是否创建了一些奇怪的变量,以防止在typescript文件的上下文中使用这些变量?在定义一个函数中的许多"let"变量的情况下会发生什么?是否存在我应该关注的性能影响?
基本上,当typescript将let变量编译为ES5javascript时会发生什么?
找到这些类型问题的答案的最简单方法是在打字练习场中进行尝试。
typescript重命名块范围内的变量。与使用用
此代码:
1 2 3 | var i = 0; for (let i = 0; i < 5; i++) {} i++; |
编译到:
1 2 3 | var i = 0; for (var i_1 = 0; i_1 < 5; i_1++) { } i++; |
以下是有关