@types/node、NodeにおけるESMとCJS
@types/nodeはNode APIの型定義を提供します。tsconfigのmoduleオプションでCommonJSとESMを選択できます
「@types/node、NodeにおけるESMとCJS」はCoddyKit上の無料TypeScript Academyレッスンです。 これはレッスン1/2です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはTypeScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 TypeScript Academyコースには全2レッスンが含まれています。
導入
目標:型安全性のために @types/node を使用し、CommonJS と ES Modules の違いに応じて TS を設定します。
型定義をインストール
@types/node をインストールすると、fs や path など、Node に組み込まれている API の型定義を利用できます。
npm install --save-dev @types/nodeNode のグローバル
@types/node を使うと、process、__dirname、__filename などのグローバルが型付きで認識されます。
console.log(process.version);
console.log(__dirname);
console.log(__filename);CJS の例
CommonJS:Node のデフォルトです。require と module.exports を使用します。
// CommonJS style
const fs = require("fs");
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);ESM の例
ESM:import/export を使うモダンな構文です。tsconfig では "module": "ESNext" を設定し、package.json では "type": "module" が必要です。
// ES Module style
import fs from "fs";
const data = fs.readFileSync("file.txt", "utf8");
console.log(data);tsconfig のモジュール
tsconfig.json でモジュールシステムを制御します。module を CommonJS と ESNext の間で切り替えます。
{
"compilerOptions": {
"target": "ES2020",
"module": "CommonJS",
"moduleResolution": "node"
}
}型定義の確認
簡単な確認:なぜ @types/node をインストールするのですか?
振り返り
振り返り:@types/node は型定義を追加します。CommonJS では require、ESM では import を使用します。モジュールシステムは tsconfig で決まります。
よくある質問
「@types/node、NodeにおけるESMとCJS」レッスンは無料ですか?
はい。「@types/node、NodeにおけるESMとCJS」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、TypeScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 TypeScript Academyコースには全2レッスンが含まれています。
「@types/node、NodeにおけるESMとCJS」で何を学びますか?
@types/nodeはNode APIの型定義を提供します。tsconfigのmoduleオプションでCommonJSとESMを選択できます ブラウザで直接実行するハンズオンコードでTypeScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
TypeScript Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのTypeScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/2です。
「@types/node、NodeにおけるESMとCJS」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このTypeScript Academyレッスンでコードを書いて実行できますか?
はい。すべてのTypeScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- @types/node、NodeにおけるESMとCJS
- 実行時オプション(ts-node/tsx)とソースマップ