TypeScript
メインページ > 工学 > 情報技術 > プログラミング > TypeScript
TypeScriptはJavaScriptから派生したプログラミング言語。JavaScriptで文法的に正しいコードを全て受けつけ、加えてオプションで型注釈を用いてコードを静的型付けであるかのように型安全にすることができる。
環境準備 編集
- パッケージマネージャーを使う
npm install typescript
- ブラウザ上で動作するplaygroundを使う ⇒ https://www.typescriptlang.org/play
npmプロジェクトの作成編集
npm init
プロジェクトを作成するために必要な情報が聞かれるので其れに答える。
npm install typescript
TypeScriptの最新バージョンをインストールする。
Hello, World編集
- 文字リテラルを実引数に関数を呼び出した例
console.log("Hello, World!");
- 文字リテラルを一旦変数に入れ関数を呼び出した例
const message = "Hello, World!"; console.log(message);
- 文字リテラルを一旦型を指定した変数に入れ関数を呼び出した例
const message: string = "Hello, World!"; console.log(message);
以上のコードは全て同じくコンソールに
- 実行結果
Hello, World!
を出力します。
制御構造編集
TypeScriptは、JavaScriptと同じ制御構造構文を持ちます。
「JavaScript/制御構造」も参照
条件文編集
- if文の例
let num: number = 0.0 / 0.0 if (num < 0.0) { console.log('負') } else if (num > 0.0) { console.log('正') } else if (num == 0.0){ console.log('零') } else { console.log('NaN') }
- 実行結果
NaN
- switch文の例
let num: number = 0.0 / 0.0; switch (true) { case num < 0.0: console.log("負") break case num > 0.0: console.log("正") break case num == 0.0: console.log("零") break default : console.log("NaN") }
- 実行結果
NaN
反復文編集
- while文
- do-while文
- for文
- for-in文
- for-of文
tsconfig.json 編集
noImplicitAny
(boolean): 暗黙的にany
と推論された場合即座にエラーにする。strictNullChecks
(boolean):undefined
やnull
の可能性がある式に対して操作を試みることを禁止する。strictFunctionTypes
(boolean): 関数の引数の型、型変数を持つクラスの型引数に対するチェックが厳しくなる。strictBindCallApply
(boolean):Function
及びそのサブタイプに対するbind
、call
、apply
の呼び出しが厳格化される。strictPropertyInitialization
(boolean): 定義時にもコンストラクタ内でも初期化されないクラスのインスタンス変数をエラーにする。noImplicitThis
(boolean):this
がany
と推論される場合エラーにする。strict
(boolean):noImplicitAny
、strictNullChecks
、strictFunctionTypes
、strictBindCallApply
、strictPropertyInitialization
、noImplicitThis
を全て有効化する。