为什么要使用TypeScript?TypeScript和js区别在何处?

二者的主要区别为:TypeScript是静态类型,js是动态类型(详见强类型、弱类型、静态类型、动态类型的区别)。

但这不意味着两者差距多大,只是类型检查的时机不同而已,TS和js根本上的差别就这一点,然而其意义却举足轻重。

静态类型检查可以做到early fail,即你编写的代码即使没有被执行到,一旦你编写代码时发生类型不匹配,语言在编译阶段(解释执行也一样,可以在运行前)即可发现,同时IDE也能提供大量便捷支持。对小型项目而言也许发挥不出多大优势,然而当项目规模膨胀,运行前的类型检查就大放异彩了——首先,大型项目测试调试分支覆盖困难,很多代码并不一定能够在所有条件下执行到,运行前的类型检查是减少bug的一大手段;其次,静态类型对阅读代码是友好的,在团队合作、代码维护和交接中意义不言自明;最后,IDE提供的大量便捷支持和TS本身的语法检查和代码提示自动补全让开发者提高效率,方便重构(维护过大型web项目中各种乱七八糟的js文件就能发现静态类型多美好)。

当然,TypeScript 只是为 JavaScript 中本身就存在的使用方式提供了对应的类型标注,所有在 TypeScript 中能够使用的开发模式,在 JavaScript 中一定是本身就存在的。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值