为什么以这种方式转换代码
why the code is converted in this way?
最近开始学习打字稿。我对从Typescript到Javascript的转换有疑问。
为什么使用此代码:
class Greeter {
greeting: string;
private hello(){
return this.greeting;
}
public hi(){
alert(this.hello());
}
constructor(message: string) {
this.greeting = message;
}
greet() {
return "Hello, " + this.greeting;
}
}
转换为
var Greeter = (function () {
function Greeter(message) {
this.greeting = message;
}
Greeter.prototype.hello = function () {
return this.greeting;
};
Greeter.prototype.hi = function () {
alert(this.hello());
};
Greeter.prototype.greet = function () {
return "Hello, " + this.greeting;
};
return Greeter;
})();
不是这个吗?
var Greeter = (function () {
var hello = function(){
return this.greeting;
}
function Greeter(message) {
this.greeting = message;
}
Greeter.prototype.hi = function () {
alert(hello.call(this));
};
Greeter.prototype.greet = function () {
return "Hello, " + this.greeting;
};
return Greeter;
})();
为什么会这样转换?
私有变量和函数在运行时不设为私有的原因是性能下降。TypeScript 的创建是为了支持在浏览器和服务器上运行的大型程序 - 因此性能是一个大问题。
当TypeScript发布时,我问了同样的问题,Anders回答了。您可以查看有关 Codeplex 的讨论。
相关文章:
- JavaScript代码问题:我正在将对象转换为数组
- 如何将字母转换为二进制代码
- js代码从jQuery转换为原生代码
- 将javascript代码转换为jquery代码时出错
- Javascript到jQuery的转换代码
- 将代码转换为可重用对象
- 如何在html中将字符串转换为数字?以及如何将变量传递到scriptlet代码中
- 需要帮助编写在不使用toString的情况下将十进制转换为二进制的代码
- 将mongoose javascript代码转换为typescript.此引用丢失
- 应用将图表转换为图像的jqplot代码时Chrome挂起
- 将JQuery代码转换为等效的JavaScript代码
- 将Google AdWords转换跟踪(javascript)代码添加到PrestaShop/Smarty页面中
- Google Adwords转换代码集成到Prestashop中的CMS页面
- 如何在点击链接后添加Facebook转换代码
- Volusion Java Script -如何安装ROI跟踪转换代码
- 如何在javascript字符串转换代码
- Javascript:转换代码字符串和返回
- 有人能解释一下这个基本转换代码吗?
- 为什么以这种方式转换代码
- 理解简单的轮播转换代码