TypeScriptとは
JavaScriptを拡張して作られたものですが、JavaScriptとは違い静的型付けのクラスベースオブジェクト指向言語
TypeScriptをコンバートすると、JavaScriptのコードに変換されるためJavaScriptが動く環境であればすぐに使うことができる。JavaScriptのライブラリなども使用でき、互換性は抜群!!
JavaScriptとの違い
- 動的型付けから静的型付けになった
- クラスが使える
- ジェネリクスが使える
静的型付け
以下のように型を宣言できる
1 2 3 |
let flag: boolean = false; // boolean型 let decimal: number = 256; // 数値型 let word: string = 'hello'; // 文字列型 |
クラスが使える
以下のようにクラスが使える。interfaceやextendも使える
1 2 3 4 5 6 7 8 |
class User { name: string age: number constructor {name: string) { this.name = name; } } const user= new User('test user') |
ジェネリクスが使える
ジェネリクスとは「抽象化されたデータ型」を表現する機能
同様な関数だが、型違いの場合に、引数である型を抽象化する時に使える
1 2 3 4 5 |
let getArray = <T>(value: T): T[] => { // <T>という抽象的な型を宣言 return [value, value, value]; }; console.log(getArray<number>(1)); // 実行時に<T>の部分に型を指定してあげる |