放弃 TypeScript 的 7 个非常好的理由

很多人都喜欢 TypeScript。它“解决”了 JS 的许多问题,是 JS 的一个“超集”,它将使代码易于阅读。有很多使用 TypeScript 的理由,但是我将给您 7 个不使用 TypeScript 的理由。
TypeScript 有风险
TypeScript 添加类型定义并在编译时检查类型,怎么会有风险?IDE 集成还会警告您有关类型不匹配的信息。不过问题也在这。TypeScript 仅在编译时检查类型,并且仅检查可用的类型。任何网络调用、系统库、特定于平台的 API 和无类型的第三方库都无法与 TypeScript 通信。当您习惯了类型检查并不必完全了解代码和平台时,错误和 BUG 就会显现出来。
使用 JS,您无需对类型做任何假设,并且可以检查变量的具体值以确保它是否是您期望的值。或者,如果您在这种情况下不关心其类型,则不必做什么。在 TS 中,您依赖编译器为您完成此任务,但是它只能检查这么多。您可以将这两种方式结合起来,但那又有什么意义呢? 如果要花时间编写定义,然后花时间编写代码以确保在运行时检测类型,那么为什么要预先去写类型呢?
TypeScript 太乱了
另一个悖论:本应为代码库带来清晰度和可读性的语言反而使代码更加模糊。为了说明我的意思,请查看一些我在一些流行的开源库中找到的示例:
// TODO: do this more elegantly
😭(currentReducer as unknown) as Reducer<
NewState,
NewActions

) = nextReducer
复制代码这是来自 Redux 库的,所有这 4 行代码的目的是将 nextReducer 赋值给 currentReducer。
//

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值