TS:
TS是JS的超集(JS有的TS都有),在JS基础之上,为JS添加了类型支持
TS为什么要为JS添加类型支持:
因为JS类型系统存在"先天缺陷",JS中绝大部分错误都是"类型"错误,增加了找BUG,改BUG
时间,影响开发效率
编程语言的动静区分:
Typescript属于静态类型的编程语言,JS属于动态类型的编程语言。
静态类型:编译期做类型检查;
动态类型:执行期做类型检查;
代码编译和代码执行的顺序:
1 编译 2执行
对于JS来说:
需要等到代码真正去'执行' 的时候才能发现错误(晚)
对TS来说:
在代码编译的时候(代码执行前)就可以发现错误(早)
TS相比JS的优势:
更早发现错误、减少找Bug、改Bug,提升开发效率
程序中任何位置都有'代码提示',随时随地的安全感,增强了开发体验
强大的'类型系统'提升了代码的可维护性,使得'重构代码更加容易'
支持'最新的ECMAScript语法',优先体验最新的语法,让你走在前端技术的最前沿
TS'类型推断'机制,不需要在代码中的'每个地方都显示标注类型',让你享受优势的同时,尽量降
低成本
Vue3源码使用TS重写,Augular默认支持T