iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0

TypeScript 有關類型的進階內容

列舉類型

  • 當值域有一定範圍的限制或當值域從有限個選項中進行選擇時,適合使用列舉,而在TypeScript中是使用enum來定義列舉。
  • 在使用時列舉可直接使用列舉名稱,會使程式的可讀性非常強。
  • 列舉的種類:
    1. 數字列舉
    2. 字串列舉
  • 列舉的定義方式:
    1. 常數定義:
      (1)當首個列舉項未被初始化時,會被預設為0
      (2)當目前的列舉項未被初始化,且前一個列舉項為數字常數,會在前一項的基礎上+1
      (3)當目前列舉項使用常數運算式初始化(包括數字常數、字串常數)
    2. 計算量定義:
      (1)使用函數定義
      (2)運算式包含變數

Any類型

  • 特性:
    1. any可以表示任意類型,在執行時,可動態地修改變數值的類型。
    2. 當我們宣告一個變數,但並未指定類型時,也可以認為其類型為any。
  • any在提高靈活性的同時也降低了程式的安全性,若可以明確定義變數類型時,盡量不要使用any。

Never類型

  • 特性:無法賦值。
  • 常用於會拋出例外的函數中、永遠沒有終結的函數之回傳值。

類型斷言

  • 定義:開發者強制指定某一變數的類型,當我們非常明確某個變數儲存的資料是什麼類型時,就可以使用類型斷言。

  • 使用:

    1. 括號
    var some:any;
    some = "Hello";
    console.log((<string>some).length);
    
    1. as
    var some:any;
    some = "Hello";
    console.log((some as string).length);
    
  • 類型斷言不是類型轉換,欲將變數斷言成一個不存在的類型時,還是會顯示出錯的。

  • 今天的介紹就到這邊,下篇將會講TypeScript中函數的宣告及定義。


上一篇
Day 8
下一篇
Day 10
系列文
從零開始學習TypeScript、Vue.js !!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言