Skip to content

TypeScriptとJavaScriptの統合

公開日:November 16, 2024更新日:November 28, 2024
JavaScriptTypeScriptCoding📄

TypeScriptはJavaScriptのスーパーセットであり、既存のJavaScriptプロジェクトに導入してコードの型安全性を高めることができます。このセクションでは、JavaScriptプロジェクトにTypeScriptを導入する方法や、.jsファイルに型注釈を追加する方法、JavaScriptライブラリの型定義ファイル(DefinitelyTyped)の利用について説明します。

JavaScriptプロジェクトへのTypeScriptの導入

TypeScriptを既存のJavaScriptプロジェクトに導入するには、少しずつTypeScriptに移行していく方法が推奨されます。以下はその手順です。

  1. TypeScriptのインストール まず、プロジェクトにTypeScriptを追加します。

    bash
    npm install --save-dev typescript
  2. tsconfig.jsonの作成 TypeScriptの設定ファイルであるtsconfig.jsonを作成します。tsconfig.jsonにはコンパイラオプションや対象とするファイルの設定が含まれます。

    bash
    npx tsc --init

    これでデフォルトの設定が書かれたtsconfig.jsonファイルが生成されます。このファイルを編集して、プロジェクトに合わせた設定を行います。

  3. JavaScriptファイルのコンパイル TypeScriptコンパイラ(tsc)は、.jsファイルもコンパイル対象として扱えます。tsconfig.jsonに以下のように設定することで、JavaScriptファイルもTypeScriptのチェック対象に含めることができます。

    json
    {
      "compilerOptions": {
        "allowJs": true,
        "checkJs": true
      },
      "include": ["src/**/*"]
    }
    • allowJs: .jsファイルをコンパイル対象に含めるかどうかを指定します。
    • checkJs: .jsファイルに対して型チェックを行うかどうかを指定します。
  4. .tsファイルへの移行 JavaScriptファイルを少しずつ.ts(または.tsx)ファイルにリネームし、型注釈を追加することで、プロジェクトをTypeScriptに移行していきます。

.jsファイルの型注釈

TypeScriptでは、JavaScriptファイル内でもJSDocを使って型注釈を追加することができます。これにより、JavaScriptファイルでも型情報を活用して開発効率を高めることができます。

javascript
/**
 * @param {number} a - 最初の数値
 * @param {number} b - 次の数値
 * @returns {number} 二つの数値の合計
 */
function add(a, b) {
  return a + b;
}

add(5, 10); // 型注釈により型チェックが有効になる

このように、JSDocコメントを使って関数の引数や戻り値の型を指定することで、JavaScriptファイルでもTypeScriptの型安全性を得ることができます。エディタ(VS Codeなど)はこれらの型注釈を認識し、補完機能や型チェックを提供してくれます。

JavaScriptライブラリの型定義ファイルの利用(DefinitelyTyped)

JavaScriptのライブラリをTypeScriptで使用する際、型定義ファイル(.d.tsファイル)が必要になることがあります。多くのJavaScriptライブラリには、型定義ファイルがコミュニティによって提供されており、DefinitelyTypedというプロジェクトで管理されています。

型定義ファイルをインストールするには、@types/パッケージを使います。たとえば、lodashライブラリの型定義ファイルをインストールするには、次のコマンドを実行します。

bash
npm install --save-dev @types/lodash

これにより、lodashの型情報がプロジェクトに追加され、TypeScriptが型チェックや補完を提供してくれます。

typescript
import _ from "lodash";

let numbers = [1, 2, 3, 4];
let doubled = _.map(numbers, (n) => n * 2);
console.log(doubled); // [2, 4, 6, 8]

このように、型定義ファイルを利用することで、JavaScriptライブラリをTypeScriptプロジェクト内で安全に使用することができます。

まとめ

JavaScriptプロジェクトにTypeScriptを導入することで、コードの品質や開発効率を向上させることができます。まずはTypeScriptをインストールし、少しずつJavaScriptファイルを型注釈付きの.tsファイルに移行していくことが推奨されます。また、JSDocを使って.jsファイルに型注釈を追加することで、既存のコードにも型安全性を取り入れることが可能です。さらに、DefinitelyTypedの型定義ファイルを利用することで、JavaScriptライブラリをTypeScriptで簡単に扱うことができます。これらの手法を活用し、JavaScriptからTypeScriptへの移行をスムーズに行いましょう。