您好,登錄后才能下訂單哦!
這篇文章主要介紹了TypeScript如何使用類型別名,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
類型別名
類型別名會給一個類型起個新名字,類型別名有時和接口很像,但是可以作用于原始值,聯合類型,元組以及其它任何你需要手寫的類型。
類型別名可以是泛型
type Container<T> = { value: T };
也可以使用類型別名來在屬性里引用自己:
type Tree<T> = { value: T; left: Tree<T>; right: Tree<T>; }
類型別名看起來跟interface非常像,那么應該如何區分兩者?
interface只能用于定義對象類型,而type的聲明方式除了對象之外還可以定義交叉、聯合、原始類型等,類型聲明的方式適用范圍顯然更加廣泛。
但是interface也有其特定的用處:
interface 方式可以實現接口的 extends 和 implemenjs
interface 可以實現接口合并聲明
type Alias = { num: number } interface Interface { num: number; } declare function aliased(arg: Alias): Alias; declare function interfaced(arg: Interface): Interface;
此外,接口創建了一個新的名字,可以在其它任何地方使用。 類型別名并不創建新名字—比如,錯誤信息就不會使用別名。 在下面的示例代碼里,在編譯器中將鼠標懸停在interfaced上,顯示它返回的是Interface,但懸停在aliased上時,顯示的卻是對象字面量類型。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“TypeScript如何使用類型別名”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。