谁能给我说说typescript的优势?

海洋之蓝
  • 195

刚刚深入学习了JS,却在很多项目中看到typescript的身影。仔细看了语法后,感觉就是更好的编辑器语法提示与更先进的语法支持(其实很多语法在ES6及之后,JS已经更新了),其余的没发现有什么优点?

回复
阅读 1.7k
7 个回答
知名喷子
  • 3.4k

当你的时速仅为三公里的时候,风阻对你的影响几乎可以忽略;
当你的时速达到十公里的时候,风阻看你的雨伞就不顺眼了;
当你的时速达到百公里的时候,不长成流线型分分钟给你吹歪嘴;
当你的时速达到超音速的时候,你得在前面放个尖锐物撕开空气然后躲在生成的激波锥里面,不然激波能把你解体。

正如良好的空气动力外形“仅仅是”用来对付空气阻力一样,TypeScript 也“仅仅是”用来提供语法提示与支持的。
如果你还感受不到 TS 带给你的好处,那必然是因为你面临的编码规模小到根本无需使用 TS ,正如你走路的时速还不足以让风阻正眼相看一样。
当然,那种能把大中规模项目的接口全部一字不落背下来的天才可能永远无法感受到这等好处。

此外,说个现实的优点:TS 可以让你找到更好的工作——即便公司的编码规模普遍还没有那么复杂。

ts在语法上要求更规范,是为了弥补js的不严谨;在庞杂的项目中使用ts会有效的提高软件质量,从根源上减少bug和出错率;

用ts可能会减少一些低级代码错误,但选ts主要还是开发体验,就是你说的提示和语法糖,这一点很重要,有相当多的程序员会将开发体验摆在用户体验甚至需求实现之上呢。

提高项目可维护性:

  • 通过类型约束,提升代码稳定性、代码中函数/方法的用途可预见性
  • 通过接口、抽象类约束,让项目中扩展点层次分明,提升项目规范性
  • 更多的数据类型支持(元组、枚举、字面量),让项目中数据使用意图更加清晰

提升代码质量:

  • 代码风格更加统一。
  • 代码含义更加明确,减少了代码隐式含义。关注点更加集中,写代码更加流畅。

静态类型好处:

  • 杜绝手误导致变量名写错
  • 类型在一定程度上可以补充文档
  • 更好的编辑器提示,效率提升
  • 4
广东新手上路,请多包涵

你说的es6之后的js提示同样是ts声明的

说实话我也是初学 TS 不久,在 Vue 里用的,感觉最大的好处就是报错,只要写好类型,类型弄错的时候,VSCode 会报错,方便找问题解决问题。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏