文章已阅读
 

Typescript(文件后缀名.ts)是Javascript(文件后缀名.js)的超集,可以在ts中使用原生js语法,即向下兼容。
Typescript简称“TS”,Javascript简称“JS”

TS引入了 js中没有的“类”概念
TS中引入了模块的概念,可以把声明、数据、函数和类封装在模块中。
TS没有重载概念,TypeScript可使用重载
TS对比js基础类型上,增加了 void/never/any/元组/枚举/以及一些高级类型
TS需要静态编译,它提供了强类型与更多面向对象的内容。
TS最终仍要编译为弱类型的js文件,基于对象的原生的js,再运行。故ts相较java/C#这样天生面向对象语言是有区别和局限的
TS是由微软牵头主导的,主要来自C#
TS是一个应用程序级的JS开发语言,可以开发或者说更适合开发大型应用。
TS是的超集,可以编译成纯JS这个和我们CSS中的Less或者Sass是很像的,
我们用更好的代码编写方式来进行编写,最后编译成原生的JS语言。
TS跨浏览器、跨操作系统、跨主机、且开源。由于最后编译成了JavaScript所以只要能运行JS的地方,都可以运行我们写的程序,这个设置在node.js里(TypeScript始于JavaScript,终于JavaScript。遵循JavaScript的语法和语义)
TS可以重用JS代码,调用流行的JS库。
TS提供了类、模块和接口,更易于构建组件和维护。

JS和TS的区别

JS TS
运行时类型 静态类型
程序运行时进行类型检查 编译期进行类型检查
开发环境无法提供给帮助 开发环境能提供丰富的信息
需要进行大量测试,消耗时间覆盖测试场景, 大部分检查有语言自身完成
才能保证代码的覆盖率
class扩展较弱 拥有很强class扩展
仅支持版本等级较高浏览器 支持所有的浏览器
无访问控制权限 拥有完整的成员访问控制权限
无高级特性 静态成员等特性

系统设计能力

JS TS
完备的系统设计能力
拥有interface接口规范
拥有abstrace抽象类
2022-10-13

浏览 |

© 2023 南疆 with help from Hexo and Twitter Bootstrap. Theme by Freemind.

container-narrow -->