TypeScript是专门为编程行业的朋友准备的一款javaspript超集编程语言工具。为用户提供了丰富的spript动作集,充分补充了javaspript的不足,支持为已存在的 JavaScript 库添加类型信息的头文件,实用性非常的强。
功能特点:
lambda 函数语法上,TypeScript 很类似于 JScript .NET,另外一个添加了对静态类型,经典的面向对象语言特性如类,继承,接口和命名空间等的支持的 Microsoft 对 ECMA-262 语言标准的实现。
类型批注
通过类型批注提供静态类型以在编译时启动类型检查。这是可选的,而且可以被忽略而使用 JavaScript 常规的动态类型。
对于基本类型的批注是 number, bool 和 string。而弱或动态类型的结构则是 any 类型。
类型批注可以被导出到一个单独的声明文件以让使用类型的已被编译为 JavaScript 的 TypeScript 脚本的类型信息可用。批注可以为一个现有的 JavaScript 库声明,就像已经为 Node.js 和 jQuery 所做的那样。
当类型没有给出时,TypeScript 编译器利用类型推断以推断类型。如果由于缺乏声明,没有类型可以被推断出,那么它就会默认为是动态的 any 类型。
声明文件
当一个 TypeScript 脚本被编译时,有一个产生作为编译后的 JavaScript 的组件的一个接口而起作用的声明文件 (具有扩展名 .d.ts) 的选项。在这个过程中编译器基本上带走所有的函数和方法体而仅保留所导出类型的批注。当第三方开发者从 TypeScript 中使用它时,由此产生的声明文件就可以被用于描述一个 JavaScript 库或模块导出的虚拟的 TypeScript 类型。声明文件的概念类似于 C/C++ 中头文件的概念。
类型声明文件可以为已存在的 JavaScript 库手写,就像为 jQuery 和 Node.js 所做的那样。对 ECMAScript 6 的支持TypeScript 增加了对为即将到来的 ECMAScript 6 标准所建议的特性的支持。如下为其构想:类 (以及继承) 模块Arrow functions尽管标准还未准备就绪,Microsoft 说它的目标是使 TypeScript 的特性与建议的标准看齐。
类
支持集成了可选的类型批注支持的 ECMAScript6 的类。
泛型
这种语言的规范说明一个未来的版本将会支持基于类型擦除的泛型编程。与 JavaScript 的兼容性TypeScript 是 JavaScript 的一个超集。默认情况下编译器以 ECMAScript 3 (ES3) 为目标但 ES5 也是受支持的一个选项。一个 TypeScript 应用可以利用已存在的 JavaScript 脚本。编译后的 TypeScript 脚本也可以从 JavaScript 中使用。现有框架如 jQuery 和 Node.js 等受到完全支持。这些库的类型声明在源代码中提供。支持的浏览器和平台运行于任何平台上的任何网页浏览器都可以运行 TypeScript 由于它仅仅是被编译为标准的 JavaScript。一个脚本既可以被预编译为 JavaScript 也可以通过为 TypeScript 包含 JavaScript 编译器实时编译。