TypeScript - 概览

原创
admin 4个月前 (08-10) 阅读数 26 #Typescript

TypeScript - 概览

JavaScript最初被引入作为客户端语言。Node.js的发展使JavaScript也成为了一种新兴的服务器端技术。然而,随着JavaScript代码的增长,它往往会变得混乱,使得代码难以维护和重用。此外,JavaScript未能拥抱面向对象、强类型检查和编译时错误检查等特性,这阻碍了JavaScript在企业级应用中作为一种成熟的服务器端技术的发展。TypeScript应运而生,旨在填补这一空白。

什么是TypeScript?

从定义上看,TypeScript是用于应用规模开发的JavaScript。

TypeScript是一种强类型、面向对象、可编译的语言。它由微软的Anders Hejlsberg(C#的设计者)设计。TypeScript既是一种语言,也是一套工具。TypeScript是JavaScript的一个类型化超集,最终编译为JavaScript。换句话说,TypeScript是JavaScript加上一些额外的特性。

TypeScript的特性

TypeScript就是JavaScript。TypeScript从JavaScript开始,也以JavaScript结束。TypeScript从JavaScript中获取程序的基本构建块。因此,你只需要了解JavaScript就可以使用TypeScript。所有TypeScript代码都会被转换为其JavaScript等效形式以便执行。

TypeScript支持其他JavaScript库。编译后的TypeScript可以被任何JavaScript代码调用。TypeScript生成的JavaScript可以重用所有现有的JavaScript框架、工具和库。

JavaScript就是TypeScript。这意味着任何有效的.js文件都可以重命名为.ts,并与其他TypeScript文件一起编译。

TypeScript是可移植的。TypeScript可以在浏览器、设备和操作系统之间移植。它可以在任何JavaScript运行的环境中运行。与其他语言不同,TypeScript不需要专用的虚拟机或特定的运行时环境来执行。

TypeScript与ECMAScript

ECMAScript规范是一种脚本语言的标准化规范。ECMA-262已发布了六个版本。该标准的第6版本代号为"Harmony"。TypeScript与ECMAScript 6规范保持一致。

TypeScript的基本语言特性来自ECMAScript 5规范,即JavaScript的官方规范。TypeScript的语言特性,如模块和基于类的面向对象,与ECMAScript 6规范保持一致。此外,TypeScript还采纳了泛型和类型注解等特性,这些特性并非ECMAScript 6规范的一部分。

为什么使用TypeScript?

TypeScript优于其他类似语言(如CoffeeScript和Dart编程语言),因为TypeScript是对JavaScript的扩展。相比之下,像Dart、CoffeeScript这样的语言本身就是新语言,需要特定的执行环境。

TypeScript的优势包括:

  • 编译 - JavaScript是一种解释型语言。因此,它需要运行才能测试其有效性。这意味着你编写了所有代码,但如果出现错误,可能没有任何输出。因此,你必须花费数小时尝试查找代码中的错误。TypeScript转换器提供了错误检查功能。如果TypeScript发现某种语法错误,它会编译代码并生成编译错误。这有助于在脚本运行前突出显示错误。
  • 强静态类型 - JavaScript不是强类型的。TypeScript通过TLS(TypeScript语言服务)提供了可选的静态类型和类型推断系统。没有声明类型的变量,其类型可能由TLS根据其值推断出来。
  • TypeScript支持为现有JavaScript库提供类型定义。TypeScript定义文件(扩展名为.d.ts)为外部JavaScript库提供了定义。因此,TypeScript代码可以包含这些库。
  • TypeScript支持面向对象编程概念,如类、接口、继承等。

TypeScript的组成部分

TypeScript的核心包含以下三个组件:

  • 语言 - 它包括语法、关键字和类型注解。
  • TypeScript编译器 - TypeScript编译器(tsc)将用TypeScript编写的指令转换为JavaScript等效形式。
  • TypeScript语言服务 - "语言服务"在核心编译器管道周围暴露了一个额外的层,供类似编辑器的应用程序使用。语言服务支持典型编辑器操作,如语句补全、签名帮助、代码格式化和轮廓、着色等。

声明文件

当TypeScript脚本被编译时,可以选择生成一个声明文件(扩展名为.d.ts),它充当了编译后JavaScript组件的接口。声明文件的概念类似于C/C++中头文件的概念。声明文件(扩展名为.d.ts的文件)为JavaScript库(如jQuery、MooTools等)提供了类型、函数调用和变量的智能感知支持。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。

作者文章
热门
最新文章
标签列表