今回はTypeScriptについて学習する。
TypeScriptとは?
TypeScriptはマイクロソフトが開発した、プログラミング言語で、JavaScriptに型の概念を取り入れたもの。
TypeScriptはAltJS(Alternative JavaScript:JavaScriptの代わり)の1つで、コンパイルすると、JavaScriptのコードが吐き出されるらしい。
JavaScriptと比較した最大の特徴
なんといっても型定義の概念があること!
これは、ベースがC言語の自分からしたら、うれしいことこの上ない!!
もうさ、型がないことの意味が分かんないもんww
うれしすぎる。
何はともあれ、使ってみないことにはわからないので、今回も例によってCodeSandboxにて色々いじいじしてみる。
関数の引数の型が指定されていないと警告してくれる
こんな感じで、掛け算の結果を返してくれる関数を作った場合に、関数の引数の型が明記されていないと、赤い波線で警告してくれる。(実行はできる)
赤い波線のところにカーソルを持っていくと、警告の内容を表示してくれる。
num1が暗黙的にany型(なんでもいいよっていう型)になっているよって教えてくれてる。
一応、any型だからなのか、文字列を引数にしてもよしなに計算してくれるらしい。
コンソールはこんな感じ。(文字列でも掛け算できるんや・・・(驚)
それでは、TypeScriptの醍醐味である、「型」を指定してみよう!
計算自体はやっぱりできるみたいだけど、2つ目のconsole.logで引数に赤い波線が出ている。
赤い波線にカーソルを持っていくと、1つ目の引数は数値型っス!って教えてくれる。
定義されていないプロパティにアクセスしようとすると警告してくれる
オブジェクトに定義していないプロパティ(下記の例だとcolorは未定義)にアクセスすると、「colorプロパティなんてない」って警告を出してくれる。
そのほかにも、
- nullになる可能性のある部分を警告してくれる
- 引数の過不足を警告してくれる
・・・など色々あるが、そのあたりはTypeScriptでコーディングしていくときにおいおい・・・。