这就是说,TypeScript 的最初动机是减少 .NET 程序员的转移和学习成本。所以,它的很多语法概念跟 .NET 很类似。
如果你对 JavaScript 还不熟悉,建议先阅读《JavaScript 教程》和《ES6 教程》,再来阅读本书。
上面的代码在 TypeScript 里面都会报错。
修改他人的 JavaScript 代码,往往非常痛苦,项目越大越痛苦,因为不确定修改后是否会影响到其他部分的代码。
前面说了,TypeScript 的主要功能是为 JavaScript 添加类型系统。大家可能知道,JavaScript 语言本身就有一套自己的类型系统,比如数值123和字符串Hello。
总的来说,这些缺点使得 TypeScript 不一定适合那些小型的、短期的个人项目。
如果你对 JavaScript 还不熟悉,建议先阅读《JavaScript 教程》和《ES6 教程》,再来阅读本书。
TypeScript(简称 TS)是微软公司开发的一种基于 JavaScript (简称 JS)语言的编程语言。
如果你对 JavaScript 还不熟悉,建议先阅读《JavaScript 教程》和《ES6 教程》,再来阅读本书。
微软推出这门语言的主要目的,是让 JavaScript 程序员可以参与 Windows 8 应用程序的开发。
2023年,TypeScript 5.0 版本发布。
本书假定读者已经了解 JavaScript 语言,就不再介绍它的语法了,只介绍 TypeScript 引入的新语法,主要是类型系统。
静态类型也存在一些缺点。
作为比较,TypeScript 是在开发阶段报错,这样有利于提早发现错误,避免使用时报错。另一方面,函数定义里面加入类型,具有提示作用,可以告诉开发者这个函数怎么用。
修改他人的 JavaScript 代码,往往非常痛苦,项目越大越痛苦,因为不确定修改后是否会影响到其他部分的代码。
(3)更好的 IDE 支持,做到语法提示和自动补全。
TypeScript 的作用,就是为 JavaScript 引入这种静态类型特征。
(3)更高的学习成本。
如果你对 JavaScript 还不熟悉,建议先阅读《JavaScript 教程》和《ES6 教程》,再来阅读本书。
有了类型之后,程序员不仅需要编写功能,还需要编写类型声明,确保类型正确。这增加了不少工作量,有时会显著拖长项目的开发时间。
静态类型有很多好处,这也是 TypeScript 想要达到的目的。
请看下面的 JavaScript 代码。
静态类型的优点
2023年,TypeScript 5.0 版本发布。
另外,TypeScript 是一个开源项目,接受社区的参与,核心的编译器采用 Apache 2.0 许可证。微软希望通过这种做法,迅速提高这门语言在社区的接受度。
上面的代码在 TypeScript 里面都会报错。
上面的代码在 TypeScript 里面都会报错。
另外,TypeScript 是一个开源项目,接受社区的参与,核心的编译器采用 Apache 2.0 许可证。微软希望通过这种做法,迅速提高这门语言在社区的接受度。
举例来说,123和456这两个值,共同特征是都能进行数值运算,所以都属于“数值”(number)这个类型。
(1)丧失了动态类型的代码灵活性。
上面的例一,变量x声明时,值的类型是数值,但是后面可以改成字符串。所以,无法提前知道变量的类型是什么,也就是说,变量的类型是动态的。
(5)有助于代码重构。