一.介绍 TypeScript
1.TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准(ES6 教程)。
2.TypeScript 由微软开发的自由和开源的编程语言。
3.TypeScript 设计目标是开发大型应用,它可以编译成纯 JavaScript,编译出来的 JavaScript 可以运行在任何浏览器上。
4.2012年10月,微软发布了首个公开版本的TypeScript,2013年6月19日,在经历了一个预览版之后微软正式发布了正式版TypeScript
5.TypeScript的作者是安德斯·海尔斯伯格,C#的首席架构师。它是开源和跨平台的编程语言。
6.TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以运行在TypeScript环境中。
7.TypeScript是为大型应用的开发而设计,并且可以编译为JavaScript。
8.TypeScript 是 JavaScript 的一个超集,主要提供了类型系统和对 ES6+ 的支持,它由 Microsoft 开发,代码开源于 GitHub 上
编程语言按照数据类型大体可以分为两类,一类是静态类型语言,另一类是动态类型语言。
静态类型语言在编译时便已确定变量的类型,而动态类型语言的变量类型要到程序运行的时候,待变量被赋予某个值之后,才会具有某种类型。在 JavaScript 语言中,只有当我们对一个变量赋值时才会最终确定这个变量的数据类型,因此,JavaScript 是一门典型的动态类型语言。
动态类型的自由特性经常会导致错误,这些错误不仅会降低程序员的工作效率,而且还会由于增加新代码行,使得成本增加,最终开发陷入停顿。因为 JavaScript 无法合并类型以及编译时缺乏错误检查,因此,它不适合作为企业和大型代码库中服务器端代码。而 TypeScript 类型的定义和编译器的引入可以避免这些错误的出现。
一项研究表明,TypeScript 可以检测到所有 JavaScript 错误的 15%。在不严重破坏代码的情况下,开发人员可以更轻松地避免错误并进行代码重构。
总而言之,与 JavaScript 相比,TypeScript 代码更可靠、更容易重构。
显式类型使我们的代码可读性更高,所以我们的注意力将会更集中在系统究竟如何构建,以及系统的不同部分如何相互作用上。目前,JavaScript 已经成为了 Web 应用程序的主要开发语言,但是在大型复杂的 Web 应用系统中,JS 代码会显得杂乱无章难以梳理且调试困难,而 TypeScript 的类型定义使我们可以在大型、复杂的应用程序中,编写出更清晰的代码,源码的阅读也更容易更清晰。
同时,由于 JavaScript 是 TypeScript 的子集,因此可以在 TypeScript 代码中使用您想要的所有 JavaScript 库和代码。而且与其他语言不同,TypeScript 和 JavaScript 的语法并没有明显的区别,这就意味着你无需学习很多知识就可以开始无缝编写TypeScript 代码。
二.TypeScript 的特点
TypeScript 主要有 3 大特点:
1.始于JavaScript,归于JavaScript
TypeScript 可以编译出纯净、 简洁的 JavaScript 代码,并且可以运行在任何浏览器上、Node.js 环境中和任何支持 ECMAScript 3(或更高版本)的JavaScript 引擎中。
2.强大的类型系统
类型系统允许 JavaScript 开发者在开发 JavaScript 应用程序时使用高效的开发工具和常用操作比如静态检查和代码重构。
3.先进的 JavaScript
TypeScript 提供最新的和不断发展的 JavaScript 特性,包括那些来自 2015 年的 ECMAScript 和未来的提案中的特性,比如异步功能和 Decorators,以帮助建立健壮的组件。
代码实战
function greeter (person) {
return 'Hello, ' + person
}
let user = 'Yee'
console.log(greeter(user))
function greeter (person: string) {
return 'Hello, ' + person
}
let user = 'Yee'
console.log(greeter(user))