专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

TypeScript 是什么

来源:小易整编  作者:小易  发布时间:2023-08-17 03:35
摘要:TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个严格超集,并添加了可选的静态类型和使用看起来像基于类的面向对象编程语法操作Prototype。TypeScript是一种由微软开发的自由和开源的编程...

TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个严格超集,并添加了可选的静态类型和使用看起来像基于类的面向对象编程语法操作Prototype。

TypeScript 是什么

TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个严格超集,并添加了可选的静态类型和使用看起来像基于类的面向对象编程语法操作 Prototype。C#的首席架构师以及 Delphi 和 Turbo Pascal 的创始人安德斯·海尔斯伯格参与了 TypeScript 的开发。

TypeScript 设计目标是开发大型应用,然后转译成 JavaScript。由于 TypeScript 是 JavaScript 的严格超集,任何现有的 JavaScript 程序都是合法的 TypeScript 程序。

TypeScript 支持为现存 JavaScript 库添加类型信息的定义文件,方便其他程序像使用静态类型的值一样使用现有库中的值。当前有第三方提供常用库如 jQuery、MongoDB、Node.js 和 D3.js 的定义文件。

TypeScript 编译器本身也是用 TypeScript 编写,并被转译为 JavaScript,以 Apache License 2 发布。

背景

TypeScript 起源于微软以及外部客户在开发大规模 JavaScript 应用的过程中遇到的语言本身的短板。处理复杂 JavaScript 代码的挑战使得自定义工具在开发这门语言时很有必要。

很多依赖于 JavaScript 的开发者通常用最终编译为 JavaScript 代码的另一种语言编写脚本,例如 CoffeeScript 和 Script#(读作 ScriptSharp)。一个明显的劣势是也许无法在那另一种语言中使用任何 JavaScript 细节的语言特性,如果那种语言不支持。

与 JavaScript 的兼容性

TypeScript 是 JavaScript 的一个超集。默认情况下编译器以 ECMAScript 3(ES3)为目标但 ES5 也是受支持的一个选项。一个 TypeScript 应用可以利用已存在的 JavaScript 脚本。编译后的 TypeScript 脚本也可以在 JavaScript 中使用。

现有框架如 jQuery 和 Node.js 等受到完全支持。这些库的类型声明在源代码中提供。

支持的浏览器和平台

运行于任何平台上的任何网页浏览器都可以运行 TypeScript:由于它仅仅是被编译为标准的 JavaScript,一个脚本既可以被预编译为 JavaScript,也可以通过为 TypeScript 包含 JavaScript 编译器实时编译。

开源

TypeScript 是开源的,其源代码可以在 Apache 2 License 下从 Github 获得。这个项目由 Microsoft 维护,但是任何人可以通过在 Github 项目页发送反馈、提出建议和提交 bugfixes 而做出贡献。

已有一些批评提到,TypeScript 鼓励强类型,当前只有 Microsoft Visual Studio 支持在该语言上方便开发。最初的方案是在其它的编辑器上带来强类型,IntelliSense, 代码完成和代码重构的功能,但这可能不是一个简单的任务。此外,支持 TypeScript 开发的 Visual Studio 扩展不是开源的。最好的 TypeScript 开发体验是在 Microsoft Windows 上,然而随着时间的流逝以及这种语言的开放性,加之编译器自我托管,而且用 TypeScript 自身写的,这很有可能会改变。通过编译器的源代码访问到 AST(抽象句法树)以及详细的语言规范文档,社群已开始构建一个跨平台的编辑器,利用和 Visual Studio 所用到的相同的语言服务以提供一个增强的编辑体验。编辑器仍然在概念检验的阶段,但已经运行于 Linux, OSX 和 Windows,提供功能强度相同的 IntelliSense,代码完成和句法高亮方法。


本文地址:网络知识频道 https://www.hkm168.com/jiqiao/1027311.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


网络知识
小编:小易整编
相关文章相关阅读
  • 某台微机安装的是64位操作系统中,64位指的是什么

    某台微机安装的是64位操作系统中,64位指的是什么

    某台微机安装的是64位操作系统中,64位指的是cpu的字长,即cpu每次能处理64位二进制数据。字长是cpu的主要技术指标之一,指的是cpu一次能并行处理的二进制位数,字长总是8的整数倍,通常pc机的字长为32位,64位。本教程操作环境:w...

  • c语言是什么意思

    c语言是什么意思

    一:c语言是什么意思C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言,以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低...

  • skype是什么软件

    skype是什么软件

    skype是一种简单的免费软件,使您能够在数分钟之内在世界上的任何角落拨打免费电话,它使用全新的p2p【对等】技术将您与其他skype用户相连接。Skype是一种简单的免费软件,使您能够在数分钟之内在世界上的任何角落拨打免费电话。Sky...

  • 计算机的三类总线分别是什么?

    计算机的三类总线分别是什么?

    计算机的三类总线分别是:控制总线、地址总线和数据总线。控制总线用于将微处理器控制单元的信号,传送到周边设备;地址总线用来指定在ram之中储存的数据的地址;数据总线用于在cpu与ram之间来回传送需要处理或是需要储存的数据。总线(Bus)是计...

  • 2k屏幕是什么意思

    2k屏幕是什么意思

    2k屏幕是指分辨率能够达到2560*1440的屏幕。2k是一个通用术语,指屏幕或者内容的水平分辨率达约2000像素的分辨率等级;又因“16:9”的比例是高清晰度视频规格的国际标准,所以2k分辨率在视频制作、显示屏等领域常见格式为2560*1...

  • mysql中的不等于符号是什么

    mysql中的不等于符号是什么

    mysql中的不等于符号有两种:“!=”和“”;它们都可用于判断数字、字符串、表达式是否不相等。对于“!=”和“”,如果两侧操作数不相等,返回值为1,否则返回值为0;如果两侧操作数有一个是null,那么返回值也是null。本教程操作环境:w...

  • ipad a1822是什么型号

    ipad a1822是什么型号

    ipada1822是苹果ipad第5代的型号;ipad第5代是苹果公司于2017年03月21日在美国加利福尼亚州发布的平板电脑;该机型采用铝镁合金材质一体成型结构;前端外框为白色或黑色;有银色、金色和深空灰色3种外观颜色。本教程操作环境:...

  • html中浮动是什么

    html中浮动是什么

    在html中,浮动就是让元素可以向左或向右移动,直到它的外边距碰到其父级的内边距或者是上一个元素的外边距,只需要给元素设置“float:left|right|none|inherit”样式即可。本教程操作环境:windows7系统、CSS3...

  • 周排行
  • 月排行
  • 年排行

精彩推荐