【TypeScript】Type Annotation 型別註解

Neptune Li
Li-NInja
Published in
2 min readSep 18, 2020

🚩 前言

主要介紹函式的參數與回傳值,
有沒有使用 Type annotation(型別註解) 的差異。

🚩 Implicit any

函式的參數一定要定義,
否則 參數都是隱含型別為 any
下面的 Code 如果帶入 addition(1, 2) 結果會是 3,
如果帶入 addition('1', '2') 結果卻是 12。

const addition = function (param1, param2) {
return param1 + param2;
};

所以定義參數的型別時很重要的,
如果是希望做一個加法的運算,
應該要註解 number 型別。

const addition = function (param1: number, param2:number) {
return param1 + param2;
};

🚩 函式的回傳

  1. 函式如果回傳的是 any 型別,
    應該要主動去把他修正,
    因為減少 any 的出現是使用 TS 的一大重點。
  2. 函式如果沒有回傳值,
    不管有沒有 Type annotation(型別註解),
    Type Inference(型別推理) 都會認定為 void
  3. 如果 Typ annotation 非 void
    一定要有回傳值。

--

--