本文へ移動
章と記事の一覧

動かす基礎

JavaScript エンジンとランタイム

V8 / SpiderMonkey / JavaScriptCore / QuickJS / Hermes、そして Node・Bun・Deno・Workers

エディタへ移動

export default {
  async fetch(request) {
    const report = {
      process: typeof process,
      require: typeof require,
      Deno: typeof Deno,
      Bun: typeof Bun,
      document: typeof document,
      navigator: typeof navigator,
      caches: typeof caches,
      WebSocket: typeof WebSocket,
      TextEncoder: typeof TextEncoder,
      randomUUID: crypto.randomUUID(),
    };

    // ランタイムに存在するグローバル変数を確認 / Inspect globals in this runtime
    console.log("runtime globals:");
    for (const [key, value] of Object.entries(report)) {
      console.log(` ${key} = ${value}`);
    }

    return Response.json(report);
  },
};

実行結果

実行するとここに結果が出ます。ネットワークは塞がれています。