想学习TypeScript了

从事前端开发以来或多或少的听过TS的威名,之前也去了解过相关的东西,后来因为可用可不用,公司也没强制要求用,我面试的几家公司也没有使用TS等等理由放弃了。

确实,TS对于逻辑来说并没有太大的提升,不用也能实现的功能,即不能提高工作效率,还会降低开发速度,对于我这种小厂混子来说作用不大。

当我长期处在混子阶段时,也会有不满足于现状的想法,是时候闲鱼翻身一波了

说正事吧,为什么想学习TS了,来看这段代码

// 设计该方法时希望传入一个对象,返回age属性
function getAge(person){
  return person.age
}
getAge(1) // undefined

// 希望返回两个参数相加的和
function getNum(a,b){
  return a + b
}
// 用了vue,通过v-model绑定的输入框的值,实际上我拿到的值是String类型的
getNum('1','2') // '12' 想得到3,结果得到了12

虽说以上代码是属于个人操作问题,人总是会出错,但是如果可以减少类似的错误,代码质量可以上一个档次。

来用TS重写以上代码
在编译时就会报错,bug扼杀在萌芽之中

function getAge(person: object){
  return person.age
}
getAge(1) //  Argument of type 1 is not assignable to parameter of type 'object'

function getNum(a,b){
  return a + b
}
getNum('1','2') // Argument of type '"1"' is not assignable to parameter of type 'number'

自己刚开始学习,已经发现了诸多好处,TS大大提升了代码的稳定性(可读性方面个人也觉得有一定提升)。

现目前大厂都已经开始慢慢把原来的JS代码用TS重写了,跟上大厂的脚步,提高代码质量,也是时候学习一波了。

你可能感兴趣的:(想学习TypeScript了)