2016-08-20 40 views
0

什么是使用打字稿作为一个类型语言的效用是否会被transpiled经典的JavaScript无论如何:使用TypeScript作为输入语言的效用是什么?

所以这statment:

let decimal: number = 6; 

将是:

var decimal = 6; 
+3

如果将C++作为高级语言编译为机器语言,那么它有什么用处? – 2016-08-20 09:35:21

回答

6

效用在编译过程中:如果你定义了一个方法来接受一个数字,而在其他地方你有一个方法调用给它一个字符串,那么在编译过程中你会看到一个错误,指出这个错误,而没有TypeScript的类型,你'必须等待并希望发现测试中的错误。

事实上,编译器只是一个可以利用这些信息的工具。您的编辑器可以使用它来实现智能自动完成,重构支持等。

确实,强类型在运行时消失了,但那时类型信息已经完成了它的工作;这是一个开发时间帮助,而不是运行时功能。

+3

+更易于编写工具:自动重构,代码完成等 –

+0

的确,好点。编译器只是一个使用这些信息的工具,不是吗? –

1

因为TypeScript允许在编译时检查类型,允许程序员很容易地编写,读取和调试程序,特别是如果它们来自强类型的面向对象编程语言(如Java)。

所以你可以获得类型的利润 - 当它作为一个参数传递给函数时,检查变量的类型,例如类,接口等等。

的确,最终,代码将被转译为普通的vanilla JavaScript。但是,对于每种高级编程语言来说也是如此,这不是在机器代码中编写程序的原因。