前言
什麼是TypeScript
TypeScript 是 JavaScript 的一個超集,主要提供了類型系統和對 ES6 的支持,它由 Microsoft 開發,代碼開源於 GitHub 上。
TypeScript 是 JavaScript 的類型的超集,它可以編譯成純 JavaScript。編譯出來的 JavaScript 可以運行在任何瀏覽器上。TypeScript 編譯工具可以運行在任何服務器和任何系統上。TypeScript 是開源的。
爲什麼選擇TypeScript
TypeScript 增加了代碼的可讀性和可維護性
- 類型系統實際上是最好的文檔,大部分的函數看看類型的定義就可以知道如何使用了
- 可以在編譯階段就發現大部分錯誤,這總比在運行時候出錯好
- 增強了編輯器和 IDE 的功能,包括代碼補全、接口提示、跳轉到定義、重構等
TypeScript 非常包容
- TypeScript 是 JavaScript 的超集,
.js
文件可以直接重命名爲.ts
即可 - 即使不顯式的定義類型,也能夠自動做出[類型推論]()
- 可以定義從簡單到複雜的幾乎一切類型
- 即使 TypeScript 編譯報錯,也可以生成 JavaScript 文件
- 兼容第三方庫,即使第三方庫不是用 TypeScript 寫的,也可以編寫單獨的類型文件供 TypeScript 讀取
TypeScript 擁有活躍的社區
- 大部分第三方庫都有提供給 TypeScript 的類型定義文件
- Google 開發的 Angular2 就是使用 TypeScript 編寫的
- TypeScript 擁抱了 ES6 規範,也支持部分 ESNext 草案的規範
TypeScript 的缺點
任何事物都是有兩面性的,我認爲 TypeScript 的弊端在於:
- 有一定的學習成本,需要理解接口(Interfaces)、泛型(Generics)、類(Classes)、枚舉類型(Enums)等前端工程師可能不是很熟悉的概念
- 短期可能會增加一些開發成本,畢竟要多寫一些類型的定義,不過對於一個需要長期維護的項目,TypeScript 能夠減少其維護成本
- 集成到構建流程需要一些工作量
- 可能和一些庫結合的不是很完美
安裝 TypeScript
TypeScript 的命令行工具安裝方法如下:
npm install -g typescript
以上命令會在全局環境下安裝 tsc
命令,安裝完成之後,我們就可以在任何地方執行 tsc
命令了。
tsc -v 查看版本
用 TypeScript 編寫 React 時,以 .tsx
爲後綴。
編輯器
TypeScript 最大的優勢便是增強了編輯器和 IDE 的功能,包括代碼補全、接口提示、跳轉到定義、重構等。
主流的編輯器都支持 TypeScript,推薦使用Visual Studio Code。
如果vscode裏面安裝的TS版本和全局安裝的版本不同會有衝突,代碼編寫時會一直報錯;
Ctrl+shift+p查看VScode TypeScript版本是否相同不相同選擇本地安裝的TS就可以了