这是我参与「第五届青训营 」笔记创作活动的第4天
昨天休息了一天,今天继续更新我的学习笔记。我将从以下几点去分享对于观看完“TypeScript入门”相关课程视频的收获,同时也分享一下自己学习的一些重要的知识点:
- 什么是TypeScript,它和JavaScript之间的区别是什么?
- TypeScript有什么语法特性
- TypeScript中的高级类型
首先是第一个问题:“什么是TypeScript,它和JavaScript之间的区别是什么”。TypeScript 是一种由微软开发的自由和开源的编程语言,它是 JavaScript 的一个超集,扩展了 JavaScript 的语法。而它和JavaScript之间的区别,则是TypeScript 是 JavaScript 的超集,扩展了 JavaScript 的语法,因此现有的 JavaScript 代码可与 TypeScript 一起工作无需任何修改,TypeScript 通过类型注解提供编译时的静态类型检查。TypeScript 可处理已有的 JavaScript 代码,并只对其中的 TypeScript 代码进行编译。
其次是关于TypeScript有什么语法特性,我个人认为它的一些语法特性和Java有着相似之处。它具有以下的一些语法特性
- 类 Classes
- 接口 Interfaces
- 模块 Modules
- 类型注解 Type annotations
- 编译时类型检查 Compile time type checking
- Arrow 函数 (类似 C# 的 Lambda 表达式)
最后,有关于TypeScript中的高级类型。在现实的前端开发的过程当中,偶尔你会遇到这种情况,一个代码库希望传入number或string类型的参数在传统的面向对象语言里,我们可能会将这两种类型抽象成有层级的类型。 这么做显然是非常清晰的,但同时也存在了过度设计。 padLeft原始版本的好处之一是允许我们传入原始类型。 这做的话使用起来既方便又不过于繁琐。 如果我们就是想使用已经存在的函数的话,这种新的方式就不适用了。
以上则是我个人的一点学习心得,欢迎各位优秀的开发者批评指正!