前言
2015 年末看過(guò)一篇文章《ES2015 & babel 實(shí)戰(zhàn):開(kāi)發(fā) npm 模塊》,那時(shí)剛接觸 ES6 不久,發(fā)覺(jué)新的 ES6 語(yǔ)法大大簡(jiǎn)化了 JavaScript 程序的表達(dá)方式,比如箭頭函數(shù)、class
、async/await
、Proxy
等新特性,從此寫(xiě) JavaScript 更成了一種享受。但是在近一年半的實(shí)踐中,發(fā)現(xiàn)多人維護(hù)一個(gè)大型項(xiàng)目時(shí),除了使用 ES6 新特性更簡(jiǎn)單地實(shí)現(xiàn)功能之外,另一個(gè)重要的事情是如何保證程序的健壯性和可維護(hù)性,在這點(diǎn)上,完全無(wú)類型檢查、表達(dá)方式極其靈活的 JavaScript 卻顯得有點(diǎn)吃力,尤其是當(dāng)團(tuán)隊(duì)人員水平參差不齊時(shí)更為嚴(yán)重。后來(lái)接觸到了 TypeScript,它是 JavaScript 語(yǔ)言的超集,除了支持最新的 JavaScript 語(yǔ)言特性之外,還增加了非常有用的編譯時(shí)類型檢查特性,而代碼又最終會(huì)編譯成 JavaScript 來(lái)執(zhí)行,非常適合原本使用 JavaScript 來(lái)開(kāi)發(fā)的大型項(xiàng)目。
我在經(jīng)過(guò)半年多的深入實(shí)踐,總結(jié)了一些使用 TypeScript 的經(jīng)驗(yàn),寫(xiě)成了這一篇文章,希望幫助 TypeScript 初學(xué)者更輕松地學(xué)習(xí)。
什么是 TypeScript
TypeScript 是一種由微軟開(kāi)發(fā)的自由和開(kāi)源的編程語(yǔ)言。它是 JavaScript 的一個(gè)超集,而且本質(zhì)上向這個(gè)語(yǔ)言添加了可選的靜態(tài)類型和基于類的面向?qū)ο缶幊?。安德斯·海爾斯伯格,C#的首席架構(gòu)師,已工作于 TypeScript 的開(kāi)發(fā)。2012 年十月份,微軟發(fā)布了首個(gè)公開(kāi)版本的 TypeScript,2013 年 6 月 19 日,在經(jīng)歷了一個(gè)預(yù)覽版之后微軟正式發(fā)布了正式版 TypeScript 0.9,向未來(lái)的 TypeScript 1.0 版邁進(jìn)了很大一步。
以上解釋來(lái)源于 百度百科 TypeScript 詞條