iT邦幫忙

2024 iThome 鐵人賽

DAY 8
0

TypeScript 基本類型

  • TypeScript的重要特點之一就是為JavaScript新增了靜態類型的功能。
  • 靜態類型使程式句更強的自解釋能力,編譯成功時的檢查使程式更具安全性。

布林、數值及字串

  • 布林:boolean,其值只有true和false。
  • 數值:在JavaScript中所有數值都用number表示,而TypeScript則支援使用多種方式來定義數值:
var num1: number = 6;          //整數
var num2: number = 3.14;       //浮點數
var num3: number = 0b1010;     //二進制
var num4: number = 0o71;       //八進制
var num5: number = 0xff;       //十六進制
var num6: number = Infinity;   //無窮
var num7: number = NaN;        //Not a Number,表非數字
  • 字串:TypeScript支援使用字串插值,方便開發者所需處理的字串拼接。

空數值狀態

  • JavaScript中有兩個特殊類型,分別為null及undefined,兩者皆只對應自己本身。
  • 雖然null及undefined相似,但應用場景及語意完全不同。
  • Undefined
    1. 僅宣告而未定義
    2. 存取物件中不存在的屬性
    3. 函數定義的參數未於呼叫時傳遞實際參數
    4. Void運算式的值:ECMAScript規定void操作符號對任何運算式求值結果都會是Undefined

Undefined的語意表達了某變數或運算式的原始狀態,也就是未經人為操作過的狀態。

  • Null
    主要表示某變數被人為置空,例如當某變數不再被使用時,會被設置為null,此時垃圾回收機制會自動對其佔用的記憶體進行回收。

  • Void類型是TypeScript中的特殊類型,表示「沒有任何類型」,當一個函數沒有傳回值時,我們可以將其傳回值的類型定義為void,如下:

function func1():void{}

只有undefined跟null可以賦值給void類型的變數。

陣列與元組

陣列

  • 宣告陣列類型有兩種方式:
    1. 類型+中括號
    2. Array+泛型
var list1: number[] = [1, 2, 3];
var list2: Array<string> = ["a", "b", "c"]

變數被指定嚴格的陣列類型,則陣列中元素無論是陣列賦值或是向內部插入,元素的類型都必須是正確的

元組

  • 元組是TypeScript中增加的資料型態,元組本身也是陣列,但它支援合併不同類型的物件。例如:
var tuple1: [string, number] = ["Jie", 20]

上面這段是用來記錄名字與年齡的,也可以按照下面這種類似於陣列的方式來設定值:

consloe.log(`name is ${tuple1[0]}, age is ${tuple1[1]})

對元組賦值時,同樣類型需與所定義的一致

  • 今天的內容大致到這邊先做個結尾,接下來會接著介紹TypeScript中有關類型的高級內容!!

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

尚未有邦友留言

立即登入留言