Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8691

次来るかもしれない!?『TypeScript』について ~JavaScriptの上位互換~ ※tsconfig.jsonもメモ

$
0
0

JavaScriptの需要とともに型、オブジェクト指向を持つTypeScriptの人気が上がってきています。
今回は『次来るかもしれない!?TypeScript』について語っちゃいますmm

7b234c88d715caf1e3063f5b88a25909.png

TypeScriptとは

TypeScriptは型やオブジェクト指向を持つJavaScript言語のようなものです。
TypeScriptのコード拡張子は「.ts」です。「.ts」ファイルを直接実行することはできないため、これをトランスコンパイルし、JavaScriptファイルである「.js」に変換します。

2度変換するのは少々面倒ですよね(笑)

TypeScriptは2種類の目的が存在する

TypeScriptは2種類のトランスコンパイラ方法があります。

❶ブラウザで動作させるJavaScriptファイルを生成するため
❷node.jsで動作させるJavaScriptファイルを生成するため

ブラウザでのJavaScriptで有名な命令でwindows.alertがあります。
これを実行するとブラウザ上でアラート(警告)が表示されます。

しかし、node.jsはブラウザを介せず、
PC上で動作するためwindows.alertコマンドは理解できません。

TypeScriptを利用する場合は実行環境が『ブラウザ』か『node.js』なのか理解しておく必要があります。

Typescriptメリット

JavaScriptは現代のアセンブラと呼ばれるほど難解な言語です。

原因は型指定が存在しないことにあります。

変数に整数型、文字型、オブジェクト型、変数まで何でも入っちゃうんですよね(笑)。

変数にパラメータを渡すときにも

・何を渡せばよいのか
・必須変数は何なのか
『API仕様書を読む』か『無ければコードを読む』しかありません。

しかしTypeScriptにより型を明確にすることにより、
それらの無駄な作業時間がなくなります。

また型が正確に指定していると、VS Codeなどでコーディングする際に補完機能が働きタイプミスやパラメータミスなど初歩的なバグを無くす事ができ、開発効率も上がります。

メリットを一言でいうならば「開発効率が超絶UP」につきます。

環境構築が必要な分、スロースターターですが、それに有り余るほどの見返りがあります。

tsconfig.jsonのメモ

{"compilerOptions":{"target":"ES2019",/*ECMAScriptのターゲットバージョンを指定します:'ES3'(デフォルト),'ES5','ES2015','ES2016','ES2017','ES2018'または'ESNEXT'*/"module":"commonjs",/*モジュールコード生成:'none','commonjs','amd','system','umd','es2015',または'ESNext'を指定します。*/"strict":true,/*すべての厳密な型チェックオプションを有効にします。*/"noImplicitAny":true,/*暗黙の'any'型で式と宣言のエラーを発生させます。*/"strictNullChecks":true,/*厳密なヌルチェックを有効にします。*/"noImplicitThis":true,/*暗黙の'any'型で'this'式のエラーを発生させます。*/"esModuleInterop":true/*デフォルトのエクスポートがないモジュールからのデフォルトのインポートを許可します。これはコードの出力には影響しません。型検査だけです。*/}}

Viewing all articles
Browse latest Browse all 8691

Trending Articles