TypeScriptの型推論(Type Inference)を理解する
TypeScriptでは必ずしもすべての変数に型を書く必要はありません。
なぜなら TypeScriptには、型推論(Type Inference)という仕組みがあるからです。
型推論とは
TypeScriptが自動的に型を推測してくれる機能です。
型推論の基本
次のコードを見てください。
let name = "Taro"この場合
name : stringと TypeScriptが自動で判断します。
つまり次のコードと同じです。
let name: string = "Taro"型推論のメリット
型推論を使うことで
- コードが短くなる
- 可読性が上がる
- TypeScriptの恩恵はそのまま受けられる
というメリットがあります。
そのため実務では
明らかな型は書かないことが多いです。
型推論の例
数値
let age = 30推論結果
age : numberboolean
let isLogin = true推論結果
isLogin : boolean配列
let numbers = [1,2,3]推論結果
number[]オブジェクトの型推論
オブジェクトも推論されます。
let user = {
name: "Taro",
age: 30
}推論結果
{
name: string
age: number
}constの場合
constを使うとより厳密な型推論になります。
const name = "Taro"推論
"Taro"これは
リテラル型と呼ばれます。
関数の型推論
関数でも型推論が使われます。
function add(a:number, b:number){
return a + b
}TypeScriptは戻り値を
numberと推論します。
つまり
function add(a:number, b:number):numberと同じです。
型推論が効かないケース
次のような場合は型を書く必要があります。
let dataこの場合
anyになります。
そのため次のように書く方が安全です。
let data: string実務でのおすすめスタイル
TypeScriptでは次のルールがよく使われます。
変数
const name = "Taro"型を書かない(推論)
関数の戻り値
function add(a:number,b:number):number戻り値は書く
まとめ
TypeScriptの型推論とは
TypeScriptが自動で型を判断する機能です。
例
let age = 30↓
age : number型推論を理解すると
- コードがシンプルになる
- TypeScriptを効率的に書ける
ようになります。
次回は、TypeScriptのinterfaceとtypeの違い

コメントを残す