【TS基础】TypeScript为什么能成为前端圈新宠?

TypeScript为什么能成为前端圈新宠?

前端开发有一个定律叫做Atwood定律,那就是“任何能用JavaScript实现的应用,最终都会用JavaScript实现。”

从移动端到后端服务,从 IoT 到神经网络,JavaScript几乎无处不在。如此广阔的应用领域,自然对语言的安全性、健壮性和可维护性有更高的要求。

尽管ES标准在近几年有了长足的进步,但在类型检查方面依然无所建树。不知道朋友们是否经常遇到过如下场景:

  1. 你调用一个别人写的函数,很不幸,这个家伙没有留下任何注释,为了搞清楚参数类型,你有可能是硬着头皮去看里面的逻辑,也有可能是找到写这个函数的人在哪里调用过这个函数,然后console出参数。
  2. 为了保证代码的健壮性,你很有责任心,对一个函数的输入参数进行各种假设,最终给老板盛上了一碗香喷喷的意大利面。
  3. 领导看好你,让你维护一个重要的底层类库,你殚精竭虑,优化了一个参数类型,但不知道有多少处引用,在提交代码前,是否感到脊背发凉?
  4. 明明定义好了接口,可是一联调就报错了–“TypeError: Cannot read property ‘length’ of
    undefined”,于是你怒气冲冲地去找后端理论:“嘿,哥们儿!这个字段是数组!这个字段是数组!这个字段是数组!”

以上情况归根结底,是因为JavaScript是一门动态弱类型语言,对变量的类型非常宽容,而且不会在这些变量和它们的调用者之间建立结构化的契约。如果你长期在没有类型约束的环境下开发,就会造成“类型思维”的缺失,养成不良的编程习惯,这也是做前端开发的短板之一,值得我们警醒。

幸运的是,TypeScript的出现很好的弥补了JavaScript在静态类型检查方面的缺陷。它为JavaScript提供了良好的类型检查支持,而且能够编译成标准的JavaScript。

在可预见的未来,TypeScript将称为前端开发者必须掌握的开发语言之一


那么, TypeScript 究竟有哪些特性使得它成为大家的”刚需“?
一,类型检查。
TypeScript会在编译代码时进行严格的静态类型检查,这意味着你可以在编码阶段发现可能存在的隐患,而不必把它们带到线上。

二,语言拓展。
TypeScript 会包括来自 ES6 和未来提案中的特性,比如异步操作和装饰器;也会从其他语言借鉴某些特性,比如接口和抽象类。

三,工具属性。
TypeScript 能够编译成标准的 JavaScript,可以在任何浏览器、操作系统上运行,无需任何运行时的额外开销。从这个角度上讲,TypeScript 更像是一个工具,而不是一门独立的语言。

除此之外,TypeScript 还可以帮助团队重塑“类型思维”,接口提供方将被迫去思考 API 的边界,他们将从代码的编写者蜕变为代码的设计者。

TypeScript核心知识框架图:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值