斷斷續續碰了一些 TypeScript 的內容,但在實務上始終缺乏一個概念式的整理,導致沒辦法隨心所欲的規劃使用。這回找上 Hiskio 上的「布魯斯的 TypeScript 入門教學」課程,看能不能有所進步。此篇會筆記下 TypeScript 的 Function 並標註一系列的屬性。
課程相關資訊
[連結]:https://hiskio.com/courses/628/lectures/33148
本篇範圍:Chapter 5
請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。
內容
1. function 可以在參數內加上定義,接著 TS 會推定回傳值或指定回傳值,並執行相當的檢查
2. 可選參數會加上 ?,表示有機會出現 undefined
3. 定義可以是自定義的 type
4. 不會回傳任何東西,也就是 void。若遇上錯誤,可以回傳一個 never
5. 構建函式的定義可以寫成如下:
1 2 3 4 5 6 7 8 9 10 11 |
type CarObj = { name: string; } type CarCreator = { new(name: string): CarObj } function createCar(carCreator: CarCreator){ return new carCreator('Andy') } |
6. array 的推定參數預設值會是 Union 結果。如果你要一個個定義的話,需要使用 as <enum> 的方法,或是 as const