1、什么是TS
typescript是javascript的超級(jí)。(js有的ts都有)
typescript=type+javascript (在js的基礎(chǔ)上添加了類型支持)
TS是微軟開發(fā)的編程語言,可以在任何運(yùn)行js的地方運(yùn)行
TS給js增加了底層靜態(tài)類型校驗(yàn)的能力
學(xué)習(xí)TS只需要學(xué)習(xí)ts的類型即可

TS為什么要為js添加類型檢查
JS的類型系統(tǒng)存在先天權(quán)限,我們遇到的問題大部分是類型錯(cuò)誤(Uncaught TypeError),增加了我們找bug 改bug的時(shí)間,嚴(yán)重的影響了我們的開發(fā)效率
編程語言分為動(dòng)態(tài)編程語言(在執(zhí)行期做類型減價(jià))靜態(tài)編程語言(在編譯期做類型檢查)代碼的執(zhí)行順序 是 先編譯后運(yùn)行 js屬于動(dòng)態(tài)編程語言 Ts屬于靜態(tài)的 編程語言
配合vscode TS在編寫代碼的時(shí)候可以避免錯(cuò)誤
TS的優(yōu)勢(shì)
1、在寫代碼的時(shí)候發(fā)現(xiàn)錯(cuò)誤,減少找bug的時(shí)間
2、任何位置都有代碼提示,增強(qiáng)了開發(fā)體驗(yàn)
3、類型支持和強(qiáng)大,重構(gòu)代碼的時(shí)候比較容易
4、支持最新的ECMAScript的語法,可以走在技術(shù)的最前沿
5、Vue3的源碼使用TS重構(gòu)的,angular默認(rèn)的支持TS,React與TS的完美配合,使得TS是中大型項(xiàng)目的首選語言
TS編譯包的安裝
由于瀏覽器或者node只認(rèn)識(shí)js,不識(shí)別TS,所以得需要工具包將ts轉(zhuǎn)換為js才能運(yùn)行
全局下載
cnpm install typescript -g
typescript的包用來編輯ts代碼將ts代碼轉(zhuǎn)換為js代碼
可以通過tsc -v來來查看ts的版本

編譯并且運(yùn)行ts代碼
1、新建**.ts文件
2、在終端通過 tsc **.ts將ts文件編譯成js
3、在終端中 node **.js來運(yùn)行
所有合法的js代碼都是TS,由TS編譯成的js代碼中已經(jīng)沒有任何的類型信息了
ts-node包簡(jiǎn)化編譯過程
1、下載
cnpm install ts-node -g
2、運(yùn)行
ts-node **.ts
也有編譯的過程只不過不需要量化
3、在開始使用ts-node運(yùn)行文件的時(shí)候有可能會(huì)報(bào)錯(cuò)

原因:ts-node的版本太新了,重新下一個(gè)
先使用 cnpm uni -g ts-node 卸載掉ts-node
再使用 cnpm i -g ts-node@8.5.4下載舊一點(diǎn)的版本就不會(huì)了.