編集

Node.js v24.2.0 リリース、import.meta.main サポート

Node.js v24.2.0 がリリースされ、import.meta.mainプロパティをサポート。ES モジュールで現在のモジュールがプロセスのエントリポイントかを判定できるブール値を提供。CommonJS のrequire.main === moduleと同等の機能を ES モジュールで実現。

import.meta.mainは、現在のモジュールが Node.js プロセスの開始点として実行されている場合にtrue、他のモジュールからインポートされている場合にfalseを返す。この機能により、ライブラリとスクリプトの両方で使用できるデュアルパーパスモジュールの作成が可能。

javascript
export function foo() {
  return "Hello, world";
}

function main() {
  const message = foo();
  console.log(message);
}

if (import.meta.main) main();
// 他のモジュールからimportされた場合、mainは実行されない

この機能は Deno と Bun でも既にサポートされており、JavaScript ランタイム間での相互運用性が向上。同じ API を使用してエントリポイント判定が可能になり、クロスランタイム対応のライブラリ開発が容易に。

出展:Node.js v24.2.0

編集