TypeScriptの型の解明

TypeScriptは型システムに依存しています。それをマスターすることは、より良いコードを書くための第一歩です。

基本的な型

TypeScriptは、JavaScriptのプリミティブ型に似た型を使用します。 • string: テキスト用。 • number: すべての数値(整数および浮動小数点数)用。 • boolean: trueまたはfalseの値用。

型推論

常に型を記述する必要はありません。TypeScriptは、提供された値に基づいて型を推測することがよくあります。これは型推論(inference)と呼ばれます。

良いルール: • ローカル変数については、TypeScriptに型を推論させます。 • 関数の引数と戻り値の型には、明示的な型を記述します。

配列とタプル

配列は、同じ型の複数の値を保持します。 • 例: let tags: string[] = ["ts", "js"];

タプルは、長さが固定され、各位置に特定の型が指定された配列です。 • 例: let user: [string, number] = ["Ramesh", 31];

ユニオン型

値が複数の型のいずれかになり得る場合は、ユニオン型を使用します。 • 例: let id: string | number = "abc123";

特殊な型

初心者が混乱しやすい4つの型があります。

  1. any これは型チェックを無効にします。コードをプレーンなJavaScriptのように動作させます。これは最終手段として使用してください。

  2. unknown これはanyの安全なバージョンです。値が何であってもよいことを示しますが、使用する前に型をチェックする必要があります。

  3. void 値を返さない関数に使用します。

  4. never エラーをスローしたり、無限ループを実行したりするなど、決して終了しない関数に使用します。

ワークフローのまとめ: • ほとんどのデータにはプリミティブ型を使用します。 • コードをクリーンに保つために型推論を活用します。 • 柔軟な入力にはユニオン型を使用します。 • anyは避けます。 • 確信が持てない場合は、anyの代わりにunknownを使用します。

Source: https://dev.to/ramesh_s_a8f0867d239e927c/typescript-types-demystified-simple-types-special-types-and-type-inference-5bf0