Typescript

TypeScript Utility Types 是一組內建的型別工具,用於操作和組合現有型別,以產生新的型別。這些工具可以讓開發者更容易地處理和操作 TypeScript 型別,提高程式碼的可讀性和可維護性。

以下介紹幾個常用的 Utility Types:

Record<Keys, Type>

interface CatInfo {
age: number;
breed: string;
}

type CatName = 'miffy' | 'boris' | 'mordred';

const cats: Record<CatName, CatInfo> = {
miffy: { age: 10, breed: 'Persian' },
boris: { age: 5, breed: 'Maine Coon' },
mordred: { age: 16, breed: 'British Shorthair' }
}

閱讀更多

Type Inference 型別推論

如果沒有明確的指定型別,TypeScript 會依照『型別推論』的規則推斷出型別

// 自動判定 string 型別
let num = 'hello';
num = 777;
// Type 'number' is not assignable to type 'string'.

如果定義的時候沒有賦值,會被推斷為 any 型別

// 自動判定 any 型別
let something;
something = 777;
something = '777';

閱讀更多

眾所皆知 JavaScript 是弱型別(Weak Typing)的語言,因此常會發生賦值錯誤導致編譯出錯,TypeScript 可視為進階版 JavaScript,提供靜態型別定義和檢查,目標是讓開發者在編寫 JavaScript 時擁有更好的開發體驗和更高的程式碼可讀性,提升專案穩定度。

基本說明

  1. TypeScript 是基於 JavaScript 的超集合(SuperSet),提供型別系統(Type System),能夠在開發時宣告型別
  2. 必須編譯成 JavaScript 檔案,瀏覽器、後端框架、Node.js 環境…才能閱讀
  3. 類型的定義可以減少 bug,能在編譯前預先檢查,避免許多運算錯誤
  4. TypeScript 只會進行靜態檢查,編譯時即使報錯,還是會產生編譯結果,仍然可以使用編譯後的 JavaScript 檔

閱讀更多

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×