Typescript 精彩履历

本文以Typescript的口吻自述,介绍其是JavaScript超集,提供类型系统和ES6支持,可编译成纯JS代码。阐述了它能增强代码可读性和可维护性、有包容心、社区活跃等优点,也指出学习成本高、短期增加开发成本等不足,建议综合判断是否使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本章节和后续章节都以 Typescript 的口吻自述,就是这么自信(自恋)。

兵法云:知己知彼,百战不殆(语出《孙子·谋攻篇》)(一个前端开始聊兵法,瞎搞,凑字数)。引用此主要想说,要用我就先看看我漂亮的履历吧。

自我介绍

我是 Microsoft 公司注册商标(来头大,后台硬)。

我是 JavaScript 的一个超集,主要提供类型系统对 ES6 的支持

我可以编译成纯的 JavaScript 代码,支持任意浏览器,任意环境,任意系统并且是开源的,开源于 GitHub 上。

我还在不断的完善中,会不断有新的特性加进来,所以你得时常关注我的成长。

如果你对我一见钟情,那就好好了解熟悉我;

如果你对我爱的山无棱天地合,那就在项目中应用我;

如果你对我没感觉,那继续回去写你的 Javascript 吧。

我好在哪里

增强代码的可读性和可维护性

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

我有包容心

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

拥有强大活跃的社区

  • 符合 ES6 规范,也支持部分 ESNext 草案的规范(有眼光);
  • 大部分第三方库都有提供给我的类型定义文件(圈内有名,后台硬);
  • Google 开发的 Angular2 就是用我来编写的(傲娇);
  • ...

当然了,我也不是完美的

  • 学习并熟悉我是需要一定的学习成本的,你需要了解什么是接口(Interfaces)、泛型(Generics)、类(Classes)、枚举类型(Enums)等前端工程师不是很熟悉的概念和定义;
  • 短期会增加开发成本,要多写一些类型的定义,不过对于长期维护的项目,用我了就能够减少维护成本;
  • 集成到构建流程需要工作量;
  • 和一些库结合的还不是很完美(其实,不完美也是一种美);

客观地说

本章最后,我想对你说的是:根据公司、项目和团队等各种情况综合判断是否选择使用我,我是很有包容心的。

You can

上一篇:Typescript 为什么选择她

下一篇:Typescript 的成长环境

转载于:https://juejin.im/post/5d0a0ce16fb9a07efc498ce4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值