[Day 02] TypeScript - | Angular TypeScript 教學
前言這系列標題不是Angular2之30天邁向神乎奇蹟之路嗎?怎麼才第二天標題就是TypeScript(之後簡稱TS)了呢?怎麼有種掛羊頭賣狗肉的感覺呢?XD先前提到Angular2很重要的一環便是它採用TS當作開發語言,如果Angular是一個網頁前端的精靈,那TS就是他的靈魂啦!事實上雖然你也可以完全使用純JavaScript(之後簡稱JS)來開發,因為TS本身就完全相容JS,但身為Super版的JS,大家都在用了(尤其老大哥微軟跟Google),尚未成為神乎其技的我們,跟著強者的方法一起修道準沒錯。所以首先我們要先把TS弄清楚,不管是語法、變數、函數、風格等等之類...
前言這系列標題不是 Angular 2之 30天邁向神乎奇蹟之路嗎?怎麼才第二天標題就是 TypeScript(之後簡稱 TS)了呢?怎麼有種掛羊頭賣狗肉的感覺呢?XD 先前提到 Angular 2很重要的一環便是它採用 TS當作開發語言,如果 Angular是一個網頁前端的精靈,那 TS就是他的靈魂啦!事實上雖然你也可以完全使用純 JavaScript(之後簡稱JS)來開發,因為 TS本身就完全相容 JS,但身為 Super版的 JS,大家都在用了(尤其老大哥微軟跟 Google),尚未成為神乎其技的我們,跟著強者的方法一起修道準沒錯。所以首先我們要先把 TS弄清楚,不管是語法、變數、函數、風格等等之類的,都要有所了解,這樣對於之後開發 Angular只會有益無害,更何況學習新的事情是多麼令人開心的事呢!
TypeScript接著就來認識一下 TS是甚麼吧!
緣起TS是為了解決 JS諸多的問題,例如資料型別(typing)、名稱空間(namescpace)以及零碎的眉眉角角,而且由於當初設計 JS的階段過於倉促,加上沒有先例可以參考(第一個同時兼具函數程式和物件導向程式的語言),總總原因讓大家對 JS不太滿意,於是就有很多改善 JS的語言誕生,它們都希望減輕 JS開發人員的負擔,改用一些結構良好或是更輕鬆的語言來開發應用程式(Script#、CoffeeScript),再透過各自的編譯器來產出 JS程式碼, TS也是其中一個。
語法接著就來快速入門吧!讓我們看看 TypeScript有那些特殊的地方。
const & let嚴格說起來這不算是 TS特殊的東西,在 ES6中對於宣告變數得更明確規範。
const cannotChange = 9; // 只要改變這個常數,程式會出錯 let canChange = [{a: 1}, {b: 2}]; //在不改變宣告的資料型別的情況下,可以改變這個參數var雖然還是能用,但能不用盡量不要用,越明確的規範對程式幫助越好。
資料型別(typing)以往在 JS 宣告變數是不...