ts學習(前言篇)

為什么我們要用typescript彤委?
javascript是一門弱類型語言,變量的數(shù)據(jù)類型具有動態(tài)性,只有執(zhí)行時才能確定變量的類型皇拣,這種后知后覺的認錯方法會讓開發(fā)者成為調(diào)試大師,但是可能對編程能力方面不具有提升薄嫡,但是對找錯誤的方法能力卻能得到加強氧急。typescript的類型機制可以有效杜絕由變量類型引起的誤用問題,而且開發(fā)者可以控制對類型的監(jiān)控程度毫深,是嚴格限制變量類型還是寬松限制變量類型吩坝,都取決于開發(fā)者的需求,添加類型機制之后哑蔫,副作用主要有2個:增大了開發(fā)人員的學習曲線钉寝,增加了設(shè)定類型的開發(fā)時間≌⒚裕總體而言嵌纲,這些付出相對于代碼的健壯性和可維護性,都是值得的腥沽。

此外逮走,類型注釋是Typescript的內(nèi)置功能之一,允許文本編輯器和IDE可以對我們的代碼執(zhí)行更好的靜態(tài)分析今阳。這意味著我們可以通過自動編譯工具的幫助师溅,在編寫代碼時減少錯誤,從而提高我們的生產(chǎn)力

typescript學習由淺入深
建議node版本在8.0及其以上

安裝typescript
npm install -g typescript 或者yarn global add typescript 

demo

mkdir ts-example
cd ts-example
vim index.ts

TS的文件編寫

const sayHello = (name: string) => {
return `Hello ${name}`
}
let user = 'gitconnected'
console.info(sayHello(user));

利用tsc index.ts進行編譯

可以 看見當前目錄下面出現(xiàn)index.js文件

編譯過后的js文件

var sayHello = function (name) {
    return "Hello " + name;
};
var user = 'gitconnected';
console.info(sayHello(user));

由此我們可以看出:

tsc index.ts這個操作會移除函數(shù)sayHello中參數(shù)的類型約束盾舌,創(chuàng)建一個index.js文件墓臭,同時轉(zhuǎn)換為 ES5 代碼。最終的 js 文件可以安全的運行在瀏覽器或者 Node 環(huán)境

(node是不能直接運行ts文件的)

typescript的錯誤處理
使用ts的一個好處就是如果你代碼中變量類型不符妖谴,它會自動捕獲到這類錯誤窿锉。這樣就可以讓我們的代碼在生產(chǎn)環(huán)境前捕獲他,并不需要在出錯前捕獲他了。

額外的ts文件擴展
除了.ts文件之外榆综,你還可以使用.d.ts文件來標記某個早期的js庫中對象的類型妙痹,或者使用.tsx文件用來在用來在React項目中運用ts的語法。

總結(jié)
使用ts的好處
1.在開發(fā)環(huán)境下捕獲錯我

  1. 智能提示和代碼自動補全

  2. 提高了代碼的可讀性

  3. 使用Es2015+

  4. 可選的靜態(tài)類型

6.強大的生態(tài)

  1. 增加職業(yè)機會

  2. 在React中使用ts無線再引入propsTypes

使用ts的缺點
編寫代碼需要更高的前期學習成本

又多了一個需要持續(xù)更近最新版本的庫

js工程的學習曲線變陡

復(fù)雜的類型可能很難搞清楚

代碼更啰嗦

依然需要使用打包工具

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鼻疮,一起剝皮案震驚了整個濱河市怯伊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌判沟,老刑警劉巖耿芹,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異挪哄,居然都是意外死亡吧秕,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門迹炼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來砸彬,“玉大人,你說我怎么就攤上這事斯入∩暗铮” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵刻两,是天一觀的道長增蹭。 經(jīng)常有香客問我,道長磅摹,這世上最難降的妖魔是什么滋迈? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮户誓,結(jié)果婚禮上饼灿,老公的妹妹穿的比我還像新娘。我一直安慰自己帝美,他們只是感情好赔退,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著证舟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪窗骑。 梳的紋絲不亂的頭發(fā)上女责,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天,我揣著相機與錄音创译,去河邊找鬼抵知。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的刷喜。 我是一名探鬼主播残制,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼掖疮!你這毒婦竟也來了初茶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤浊闪,失蹤者是張志新(化名)和其女友劉穎恼布,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搁宾,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡折汞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了盖腿。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片爽待。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖翩腐,靈堂內(nèi)的尸體忽然破棺而出鸟款,到底是詐尸還是另有隱情,我是刑警寧澤栗菜,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布欠雌,位于F島的核電站,受9級特大地震影響疙筹,放射性物質(zhì)發(fā)生泄漏富俄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一而咆、第九天 我趴在偏房一處隱蔽的房頂上張望霍比。 院中可真熱鬧,春花似錦暴备、人聲如沸悠瞬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽浅妆。三九已至,卻和暖如春障癌,著一層夾襖步出監(jiān)牢的瞬間凌外,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工涛浙, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留康辑,地道東北人摄欲。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像疮薇,于是被迫代替她去往敵國和親胸墙。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354