1、TypeScript 引入了 JavaScript 中没有的“类”概念
2、TypeScript 中引入了模块的概念,可以把声明、数据、函数和类封装在模块中。
3、js没有重载概念,ts有可以重载
4、ts对比js基础类型上,增加了 void/never/any/元组/枚举/以及一些高级类型
一、程序不同:
ts需要静态编译,它提供了强类型与更多面向对象的内容。TypeScript是JavaScript的超集,可以编译成纯JavaScript。这个和我们CSS离的Less或者Sass是很像的,用更好的代码编写方式来进行编写,最后还是友好生成原生的JavaScript语言。
二、运行不同:
ts最终仍要编译为弱类型的js文件,基于对象的原生的js在运行。故ts相较java/C#这样天生面向对象语言是有区别和局限的,TypeScript是一个应用程序级的JavaScript开发语言。这也表示TypeScript比较牛逼,可以开发大型应用,或者说更适合开发大型应用。
主要功能
TypeScript的作者是安德斯·海尔斯伯格,C#的首席架构师,它是开源和跨平台的编程语言。它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。
TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以运行在TypeScript环境中。TypeScript是为大型应用的开发而设计,并且可以编译为JavaScript。