TypeScript--初體驗

  沒想到第一次寫博客,居然寫的不是C#,而是TypeScript,不過共同點就是--同一個爸爸,Anders Hejlsberg(安德斯·海爾斯伯格,不標上中文都不知道怎麼念有木有)。node

首先介紹一下TypeScript(下面就簡稱ts),直接從官網上摘得:react

TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.linux

Any browser. Any host. Any OS. Open source.typescript

  簡單來講,ts就是Javascript的一個語法糖。添加了靜態類型檢查和麪向對象的一些特性。語法上接近C#,可是也有些ActionScript的影子(畢竟都是ECMAScript標準的實現)。ts的編譯器叫tsc,他自己也是用js寫的。最後編譯獲得的就是原生的js腳本。ts的定位應該就是讓人們使用更加嚴格的js,這點從ts嚴格遵循es的標準也能夠看出來。npm

  對於不少人來講,生態也是一個主要關注的問題。從ts的發展上來看,微軟並不打算本身打造ts生態,而是經過和其餘一些大廠合做,好比google,facebook等,因此angular和react如今都已經支持ts了。這樣你們分工也比較明確。json

  還有一個比較關注的問題,應該就是第三方js庫的支持了。若是想讓第三方使用ts重寫類庫,這顯然代價太大了,並且人家也未必願意,畢竟ts剛出來。因此這點ts在設計的時候也已經考慮到了。經過一個聲明文件(*.d.ts),把原先js庫中的api暴露出來,就能直接調用原來的js類庫。windows

  ts具體的語法細節,能夠參考官網的文檔,已經很詳細了。https://www.tslang.cn/api

  下面咱們就來實踐一下。學習

  首先是搭建環境,ts須要依賴nodejs,因此咱們先下載nodejs並安裝。google

  其次是下載ts的編譯器。目前最新版的是2.2.2。這裏須要注意一下,就是windows下的編譯器tsc.exe,在vs2015以前,最高只支持到ts 1.8.5,官方也明確說了2.0開始再也不支持vs2015以前的版本。vs2015能夠經過vs插件來下載tsc,而且支持最新的2.2.2,可是vs2017中,tsc再也不做爲一個獨立的vs插件了,貌似和vs2017已經綁定更新了,目前vs2017最新的版本只到2.1.5。因此直接在windows下編譯typescript是比較蛋疼的。

  可是ts是跨平臺的,因此我推薦使用linux下的tsc編譯器(更新及時),他是做爲一個npm包來安裝的,管理起來十分方便。而且在vscode的控制檯下,能夠直接使用linux下的tsc可執行文件。(固然你也能夠經過cygwin來編譯typescript,這裏就不細說了)。

  經過npm直接將typescript安裝到全局目錄下。

  

  下面咱們就拿typescript來練練手。

  咱們先建立一個Person類型的抽象基類:

  

  

  Gender類型是咱們定義的一個枚舉:

  

 

  而後咱們再定義個打招呼的接口:

  

  

  下面 咱們來實現一個女友的類((●ˇ∀ˇ●))來實現這個抽象類和接口:

因爲是女友,因此性別固然默認是女的啦。

  

 

 

  而後就是激動人心的建立女友環節了,讓咱們來實例化一個女友:

  

  

  最後就是編譯了,。因爲我是用vscode寫的,因此要運行還得配置一下launch.json。

  最後運行結果:

  

 

   因爲是第一次寫博客,思路和語言組織都很粗糙,望見諒。接下來我會繼續寫ts相關的文章,但願和你們一塊兒學習!

相關文章
相關標籤/搜索