typescript--介紹ts

TypeScript 介紹

TypeScript 是什麼

TypeScript 是 JavaScript 的強類型版本。而後在編譯期去掉類型和特有語法,生成純粹的 JavaScript 代碼。因爲最終在瀏覽器中運行的仍然是 JavaScript,因此 TypeScript 並不依賴於瀏覽器的支持,也並不會帶來兼容性問題。css

TypeScript 是 JavaScript 的超集,這意味着他支持全部的 JavaScript 語法。並在此之上對 JavaScript 添加了一些擴展,如 class / interface / module 等。這樣會大大提高代碼的可閱讀性。html

和 JavaScript 若類型不一樣,TypeScript 這種強類型語言最大的優點在於靜態類型檢查,能夠在代碼開發階段就預知一些低級錯誤的發生。git

  • 一種相似於 JavaScript 的語言,在 JavaScript 的基礎之上增長了類型,同時加強了 JavaScript 部分語法功能
  • 遵循 EcmaScript 6 標準規範
  • 由微軟開發
  • Angular 2 框架採用 TypeScript 編寫
  • 背後有微軟和谷歌兩大公司的支持
  • TypeScript 能夠編譯成 JavaScript 從而在支持 JavaScript 的環境中運行
  • TypeScript 和 JavaScript 的關係就比如 less 和 css 的關係

靜態類型和動態類型

靜態(static):無需運行,根據程序代碼就能肯定結果。github

動態(dynamic):只有運行才能肯定結果。typescript

類型:對某個數據所具備的性質進行的描述。如它的結構是怎樣的,能進行什麼操做。瀏覽器

靜態類型:數據擁有類型,且僅有數據擁有類型。框架

動態類型:數據擁有類型,存放數據的變量、表達式也擁有類型,且類型在編譯時是固定的。less

下圖是靜態語言和動態語言的比較:工具

從表中可見,動態語言和靜態語言各有優劣,而TypeScript提供了靜態語言強類型支持,同時兼容動態語言弱類型的語法,使用者根據項目需求自由選擇。學習

這種動靜結合的特性,目前還沒在其餘語言見過。

Why TypeScript

  • 從 Angular 2 以後,官方推薦使用 TypeScript 做爲開發 Angular 應用的首選語言

  • 遵循 EcmaScript 6
  • 強大的 IDE 支持
    • 類型檢查
    • 嚴謹的語法提示
  • 代碼重構
  • 可讀性良好

TypeScript 使用場景

  • 大型團隊開發
  • Angular 官推語言
  • 其它...

這裏引用知乎上一位開發者對使用推廣 TypeScript 的見解:

typescript絕對是好東西,不過推廣是有難度的:
一、TS是微軟製造,最好的開發工具是VS,想一想有些人就激動了(什麼vi流,sublime流,macbook流,雖然也能寫ts,但你沒法跟他們說用vs寫有多麼好);

二、即便你告訴他們TS有多好,可是幾十人的團隊裏總有一半以上的人不想學新的東西(固然我沒有權利說不學新東西的人應該所有滾動,由於互聯網打工的是大爺,想跳槽隨便找工做);

三、JSer不少沒有學習OOP開發經驗(特別是從設計/頁面重構轉過來的);

四、不少人接觸TS前根本沒學過JS,常常有人問「使用TS如何寫元素拖拽」這樣的問題(那是DOM API好伐,不過你跟初學者很難解釋明白);

- 來源:知乎
- 連接:https://www.zhihu.com/question/21879449
- 做者:Fula Li

TypeScript 不只僅用於開發 Angular 應用

https://www.typescriptlang.org/samples/index.html

  • React
  • Angular
  • Node.js
  • Vue.js
  • WeChat
  • ...

凡是能夠寫 JavaScript 的均可以使用 TypeScript。

前置知識

  • EcmaScript 6
  • TypeScript 概念及關係
  • 具備必定的 JavaScript 開發經驗
  • 有 Java、C#、C++、C 等靜態類型語言使用經驗更佳

如何學習 TypeScript

  • 官方文檔爲準
  • 閱讀別人的代碼
  • 因爲 TypeScript 是兼容 EcmaScript 6 的,因此在開發的時候不須要徹底學會 TypeScript 再使用
  • 一個建議是有空就學,會了就用
  • 雖然兼容 EcmaScript 6,但建議既然使用了 TypeScript 就讓你的 TypeScript 代碼更加 TypeScript,這樣才能發揮出 TypeScript 的威力。

相關連接

相關文章
相關標籤/搜索