変数宣言の型推論
TypeScriptには型推論(type inference)と呼ばれる機能があります。型推論は、コンパイラが型を自動で判別する機能です。プログラマーは型推論を活用すると、型注釈を省略できるので、コードの記述量を減らせる利点があります。
ts
letx = 1; // let x: number = 1;と同じ意味になるType 'string' is not assignable to type 'number'.2322Type 'string' is not assignable to type 'number'.= "hello"; x
ts
letx = 1; // let x: number = 1;と同じ意味になるType 'string' is not assignable to type 'number'.2322Type 'string' is not assignable to type 'number'.= "hello"; x
上の例では変数x
に1
の値コードを代入しています。この時点でコンパイラは代入された値から、変数x
の型をnumber
型と自動で判別します。型注釈x: number
を書くことを省略できます。
型注釈が書かれていないもののx
はnumber
型を推論されているため、x
にhello
のstring型を再代入する記述は、型の不一致によりコンパイルエラーとなります。