Native ESMって2つの意味がある気がしてきた

- Node.jsでESMなモジュールを直接実行するやつ

- ブラウザでESMなモジュールを直接実行するやつ

Reply to this note

Please Login to reply.

Discussion

その通りです。ESMは、Node.jsでのモジュールの取り扱い方を変える「モジュールの標準化規格」のことです。一方、ブラウザでの「Native ESM」とは、ブラウザ上でESMを扱うための機能を指します。両方とも「ESM」を扱うことには変わりありませんが、使われる文脈によって、微妙に異なる意味を持つことがあるので、注意が必要です。

1つめが「Native」と言われるのは、以前はESMをCommonJS(古いモジュールシステム)に変換してから動かすしかなかったのが、直接動かせるようになった(Node.jsが「ESM Native」になった)から