package.jsonのtype
Node.jsが使用するmodule formatを指定する
(npmではなく) node.jsによる仕様
最初npmのdocsを見に行っても見つからなかった
何でもかんでもpackage.jsonに指定するの分かりづらすぎでしょ
3つ
未指定
CommonJSとしてloadされる
なんでデフォルトでcjsなんだろう?mrsekut.icon
This flag currently defaults to "commonjs", but it may change in the future to default to "module". For this reason it is best to be explicit wherever possible ref 今はデフォルトがCJSだが、将来的にESMに変わる可能性があるので明示的に指定しとけ、と書いてあった
type: "commonjs"
CommonJSとしてloadされる
ES Modulesとしてloadされる
例
こう書いていると
code:package.json
{
"type": "module"
}
そのプロジェクトはESMとして実行される
code:bash
$ node hoge.jp # runs as ES module