Skip to content
Shimon's BlogShimon's Blog
主页
杂谈
  • 主页
      • 代码笔记
          • 代码学习教程
              • TypeScript 教程
                  • 简介
                    • Hello TypeScript
                      • 什么是 TypeScript
                        • 为什么选择 TypeScript
                          • TypeScript 增加了代码的可读性和可维护性
                            • TypeScript 非常包容
                              • TypeScript 拥有活跃的社区
                                • TypeScript 的缺点
                              • 安装 TypeScript
                            • 如何学习一门计算机语言

                          什么是 TypeScript

                          Shimon Zhan2022年4月19日
                          • TypeScript
                          • 介绍
                          大约 2 分钟

                          此页内容
                          • 为什么选择 TypeScript
                            • TypeScript 增加了代码的可读性和可维护性
                            • TypeScript 非常包容
                            • TypeScript 拥有活跃的社区
                            • TypeScript 的缺点

                          首先,我对 TypeScript 的理解如下:

                          TypeScriptopen in new window 是 JavaScript 的一个超集,主要提供了类型系统和对 ES6 的支持,它由 Microsoft 开发,代码开源于 GitHubopen in new window 上。

                          其次引用官网open in new window的定义:

                          TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. Any browser. Any host. Any OS. Open source.

                          翻译成中文即是:

                          TypeScript 是 JavaScript 的类型的超集,它可以编译成纯 JavaScript。编译出来的 JavaScript 可以运行在任何浏览器上。TypeScript 编译工具可以运行在任何服务器和任何系统上。TypeScript 是开源的。

                          # 为什么选择 TypeScript

                          TypeScript 官网open in new window列举了一些优势,不过我更愿意自己总结一下:

                          # TypeScript 增加了代码的可读性和可维护性

                          • 类型系统实际上是最好的文档,大部分的函数看看类型的定义就可以知道如何使用了
                          • 可以在编译阶段就发现大部分错误,这总比在运行时候出错好
                          • 增强了编辑器和 IDE 的功能,包括代码补全、接口提示、跳转到定义、重构等

                          # TypeScript 非常包容

                          • TypeScript 是 JavaScript 的超集,.js 文件可以直接重命名为 .ts 即可
                          • 即使不显式的定义类型,也能够自动做出类型推论
                          • 可以定义从简单到复杂的几乎一切类型
                          • 即使 TypeScript 编译报错,也可以生成 JavaScript 文件
                          • 兼容第三方库,即使第三方库不是用 TypeScript 写的,也可以编写单独的类型文件供 TypeScript 读取

                          # TypeScript 拥有活跃的社区

                          • 大部分第三方库都有提供给 TypeScript 的类型定义文件
                          • Google 开发的 Angular2 就是使用 TypeScript 编写的
                          • TypeScript 拥抱了 ES6 规范,也支持部分 ESNext 草案的规范

                          # TypeScript 的缺点

                          任何事物都是有两面性的,我认为 TypeScript 的弊端在于:

                          • 有一定的学习成本,需要理解接口(Interfaces)、泛型(Generics)、类(Classes)、枚举类型(Enums)等前端工程师可能不是很熟悉的概念
                          • 短期可能会增加一些开发成本,毕竟要多写一些类型的定义,不过对于一个需要长期维护的项目,TypeScript 能够减少其维护成本
                          • 集成到构建流程需要一些工作量
                          • 可能和一些库结合的不是很完美

                          大家可以根据自己团队和项目的情况判断是否需要使用 TypeScript。

                          上次编辑于: 2022/4/19 07:13:07
                          贡献者: ShimonZhan
                          上一页
                          Hello TypeScript
                          下一页
                          安装 TypeScript
                          Copyright © 2021-present Shimon Zhan