グローバルオブジェクト#

これらのオブジェクトはすべてのモジュールで使用できます。

次の変数はグローバルに見えるかもしれませんが、そうではありません。それらは CommonJS モジュール のスコープ内でのみ存在します。

ここにリストされているオブジェクトは Node.js に固有のものです。 JavaScript 言語自体の一部である、グローバルにアクセス可能な 組み込みオブジェクト もあります。

クラス: AbortController#

選択した Promise ベースの API でキャンセルを通知するために使用されるユーティリティクラス。この API は Web API の AbortController に基づいています。

const ac = new AbortController();

ac.signal.addEventListener('abort', () => console.log('Aborted!'),
                           { once: true });

ac.abort();

console.log(ac.signal.aborted);  // Prints true 

abortController.abort([reason])#

  • reason <any> オプションの理由。AbortSignalreason プロパティで取得できます。

abort シグナルをトリガーし、abortController.signal'abort' イベントを発行します。

abortController.signal#

クラス: AbortSignal#

AbortSignal は、abortController.abort() メソッドが呼び出されたときにオブザーバーに通知するために使用されます。

静的メソッド: AbortSignal.abort([reason])#

既に中止されている新しい AbortSignal を返します。

静的メソッド: AbortSignal.timeout(delay)#
  • delay <number> AbortSignal をトリガーするまで待機するミリ秒数。

delay ミリ秒後に中止される新しい AbortSignal を返します。

静的メソッド: AbortSignal.any(signals)#
  • signals <AbortSignal[]> 新しい AbortSignal を構成する AbortSignal

提供されたシグナルのいずれかが中止された場合に中止される新しい AbortSignal を返します。その abortSignal.reason は、中止された原因となった signals のいずれかに設定されます。

イベント: 'abort'#

'abort' イベントは、abortController.abort() メソッドが呼び出されたときに発行されます。コールバックは、type プロパティが 'abort' に設定された単一のオブジェクト引数で呼び出されます。

const ac = new AbortController();

// Use either the onabort property...
ac.signal.onabort = () => console.log('aborted!');

// Or the EventTarget API...
ac.signal.addEventListener('abort', (event) => {
  console.log(event.type);  // Prints 'abort'
}, { once: true });

ac.abort(); 

AbortSignal が関連付けられている AbortController は、'abort' イベントを 1 回だけトリガーします。コードは、'abort' イベントリスナーを追加する前に、abortSignal.aborted 属性が false であることを確認することをお勧めします。

AbortSignal にアタッチされたすべてのイベントリスナーは、イベントリスナーが 'abort' イベントが処理されるとすぐに削除されるように、{ once: true } オプションを使用する必要があります(または、リスナーをアタッチするために EventEmitter API を使用する場合は、once() メソッドを使用します)。これに失敗すると、メモリリークが発生する可能性があります。

abortSignal.aborted#
  • 型: <boolean> AbortController が中止された後は true。
abortSignal.onabort#

abortController.abort() 関数が呼び出されたときに通知されるように、ユーザーコードによって設定できるオプションのコールバック関数。

abortSignal.reason#

AbortSignal がトリガーされたときに指定されたオプションの理由。

const ac = new AbortController();
ac.abort(new Error('boom!'));
console.log(ac.signal.reason);  // Error: boom! 
abortSignal.throwIfAborted()#

abortSignal.abortedtrue の場合、abortSignal.reason をスローします。

クラス: Blob#

<Blob> を参照してください。

クラス: Buffer#

バイナリデータを処理するために使用されます。buffer セクションを参照してください。

クラス: ByteLengthQueuingStrategy#

安定性: 1 - 実験的。

ByteLengthQueuingStrategy のブラウザ互換の実装。

__dirname#

この変数はグローバルに見えるかもしれませんが、そうではありません。__dirname を参照してください。

__filename#

この変数はグローバルに見えるかもしれませんが、そうではありません。__filename を参照してください。

atob(data)#

安定性: 3 - レガシー。代わりに Buffer.from(data, 'base64') を使用してください。

buffer.atob() のグローバルエイリアス。

BroadcastChannel#

<BroadcastChannel> を参照してください。

btoa(data)#

安定性: 3 - レガシー。代わりに buf.toString('base64') を使用してください。

buffer.btoa() のグローバルエイリアス。

clearImmediate(immediateObject)#

clearImmediate については、タイマー セクションで説明しています。

clearInterval(intervalObject)#

clearInterval は、タイマーのセクションで説明されています。

clearTimeout(timeoutObject)#

clearTimeout は、タイマーのセクションで説明されています。

クラス: CompressionStream#

安定性: 1 - 実験的。

CompressionStream のブラウザ互換実装です。

console#

標準出力と標準エラー出力への書き込みに使用されます。console セクションを参照してください。

クラス: CountQueuingStrategy#

安定性: 1 - 実験的。

CountQueuingStrategy のブラウザ互換実装です。

Crypto#

安定度: 1 - 実験的。 --no-experimental-global-webcrypto CLI フラグでこの API を無効にします。

<Crypto> のブラウザ互換実装です。このグローバルは、Node.js バイナリが node:crypto モジュールのサポートを含めてコンパイルされた場合にのみ利用可能です。

crypto#

安定度: 1 - 実験的。 --no-experimental-global-webcrypto CLI フラグでこの API を無効にします。

Web Crypto API のブラウザ互換実装です。

CryptoKey#

安定度: 1 - 実験的。 --no-experimental-global-webcrypto CLI フラグでこの API を無効にします。

<CryptoKey> のブラウザ互換実装です。このグローバルは、Node.js バイナリが node:crypto モジュールのサポートを含めてコンパイルされた場合にのみ利用可能です。

CustomEvent#

安定度: 1 - 実験的。 --no-experimental-global-customevent CLI フラグでこの API を無効にします。

CustomEvent Web API のブラウザ互換実装です。

クラス: DecompressionStream#

安定性: 1 - 実験的。

DecompressionStream のブラウザ互換実装です。

Event#

Event クラスのブラウザ互換実装です。詳細については、EventTarget および Event API を参照してください。

EventTarget#

EventTarget クラスのブラウザ互換実装です。詳細については、EventTarget および Event API を参照してください。

exports#

この変数はグローバルに見えるかもしれませんが、そうではありません。exports を参照してください。

fetch#

安定度: 2 - 安定

fetch() 関数のブラウザ互換実装です。

クラス: File#

<File> を参照してください。

クラス FormData#

安定度: 2 - 安定

<FormData> のブラウザ互換実装です。

global#

安定度: 3 - レガシー。代わりに globalThis を使用してください。

  • <Object> グローバル名前空間オブジェクト。

ブラウザでは、トップレベルスコープは伝統的にグローバルスコープでした。これは、ECMAScriptモジュール内を除いて、var something が新しいグローバル変数を定義することを意味します。Node.js では、これは異なります。トップレベルスコープはグローバルスコープではありません。Node.js モジュール内の var something は、CommonJS モジュールであるか、ECMAScript モジュールであるかに関わらず、そのモジュールにローカルになります。

クラス Headers#

安定度: 2 - 安定

<Headers> のブラウザ互換実装です。

MessageChannel#

MessageChannel クラス。詳細については、MessageChannel を参照してください。

MessageEvent#

MessageEvent クラス。詳細については、MessageEvent を参照してください。

MessagePort#

MessagePort クラス。詳細については、MessagePort を参照してください。

module#

この変数はグローバルに見えるかもしれませんが、そうではありません。module を参照してください。

Navigator#

安定度: 1.1 - アクティブな開発。 --no-experimental-global-navigator CLI フラグでこの API を無効にします。

Navigator API の部分的な実装。

navigator#

安定度: 1.1 - アクティブな開発。 --no-experimental-global-navigator CLI フラグでこの API を無効にします。

window.navigator の部分的な実装です。

navigator.hardwareConcurrency#

navigator.hardwareConcurrency 読み取り専用プロパティは、現在の Node.js インスタンスで利用可能な論理プロセッサの数を返します。

console.log(`This process is running on ${navigator.hardwareConcurrency} logical processors`); 

navigator.language#

navigator.language 読み取り専用プロパティは、Node.js インスタンスの優先言語を表す文字列を返します。言語は、オペレーティングシステムのデフォルト言語に基づいて、実行時に Node.js によって使用される ICU ライブラリによって決定されます。

値は、RFC 5646 で定義されている言語バージョンを表します。

ICU を含まないビルドでのフォールバック値は 'en-US' です。

console.log(`The preferred language of the Node.js instance has the tag '${navigator.language}'`); 

navigator.languages#

  • {Array}

navigator.languages 読み取り専用プロパティは、Node.js インスタンスの優先言語を表す文字列の配列を返します。デフォルトでは、navigator.languages には navigator.language の値のみが含まれており、これはオペレーティングシステムのデフォルト言語に基づいて、実行時に Node.js によって使用される ICU ライブラリによって決定されます。

ICU を含まないビルドでのフォールバック値は ['en-US'] です。

console.log(`The preferred languages are '${navigator.languages}'`); 

navigator.platform#

navigator.platform 読み取り専用プロパティは、Node.js インスタンスが実行されているプラットフォームを識別する文字列を返します。

console.log(`This process is running on ${navigator.platform}`); 

navigator.userAgent#

navigator.userAgent 読み取り専用プロパティは、ランタイム名とメジャーバージョン番号で構成されるユーザーエージェントを返します。

console.log(`The user-agent is ${navigator.userAgent}`); // Prints "Node.js/21" 

PerformanceEntry#

PerformanceEntry クラス。詳細については、PerformanceEntry を参照してください。

PerformanceMark#

PerformanceMark クラス。詳細については、PerformanceMark を参照してください。

PerformanceMeasure#

PerformanceMeasure クラス。詳細については、PerformanceMeasure を参照してください。

PerformanceObserver#

PerformanceObserver クラス。詳細については、PerformanceObserver を参照してください。

PerformanceObserverEntryList#

PerformanceObserverEntryList クラス。詳細については、PerformanceObserverEntryList を参照してください。

PerformanceResourceTiming#

PerformanceResourceTiming クラス。詳細については、PerformanceResourceTiming を参照してください。

performance#

perf_hooks.performance オブジェクト。

process#

プロセスオブジェクト。process オブジェクト セクションを参照してください。

queueMicrotask(callback)#

  • callback <Function> キューに入れる関数。

queueMicrotask() メソッドは、callback を呼び出すためのマイクロタスクをキューに入れます。callback が例外をスローした場合、process オブジェクト'uncaughtException' イベントが発生します。

マイクロタスクキューは V8 によって管理され、Node.js によって管理される process.nextTick() キューと同様に使用できます。process.nextTick() キューは、Node.js イベントループの各ターン内で常にマイクロタスクキューより前に処理されます。

// Here, `queueMicrotask()` is used to ensure the 'load' event is always
// emitted asynchronously, and therefore consistently. Using
// `process.nextTick()` here would result in the 'load' event always emitting
// before any other promise jobs.

DataHandler.prototype.load = async function load(key) {
  const hit = this._cache.get(key);
  if (hit !== undefined) {
    queueMicrotask(() => {
      this.emit('load', hit);
    });
    return;
  }

  const data = await fetchData(key);
  this._cache.set(key, data);
  this.emit('load', data);
}; 

クラス: ReadableByteStreamController#

安定性: 1 - 実験的。

ReadableByteStreamController のブラウザ互換実装です。

クラス: ReadableStream#

安定性: 1 - 実験的。

ReadableStream のブラウザ互換実装です。

クラス: ReadableStreamBYOBReader#

安定性: 1 - 実験的。

ReadableStreamBYOBReader のブラウザ互換実装です。

クラス: ReadableStreamBYOBRequest#

安定性: 1 - 実験的。

ReadableStreamBYOBRequest のブラウザ互換実装です。

クラス: ReadableStreamDefaultController#

安定性: 1 - 実験的。

ReadableStreamDefaultController のブラウザ互換実装です。

クラス: ReadableStreamDefaultReader#

安定性: 1 - 実験的。

ReadableStreamDefaultReader のブラウザ互換実装です。

require()#

この変数はグローバルに見えるかもしれませんが、そうではありません。require()を参照してください。

Response#

安定度: 2 - 安定

<Response> のブラウザ互換実装です。

Request#

安定度: 2 - 安定

<Request> のブラウザ互換実装です。

setImmediate(callback[, ...args])#

setImmediatetimers セクションで説明されています。

setInterval(callback, delay[, ...args])#

setIntervaltimers セクションで説明されています。

setTimeout(callback, delay[, ...args])#

setTimeouttimers セクションで説明されています。

structuredClone(value[, options])#

WHATWG の structuredClone メソッドです。

SubtleCrypto#

安定度: 1 - 実験的。 --no-experimental-global-webcrypto CLI フラグでこの API を無効にします。

<SubtleCrypto> のブラウザ互換実装です。このグローバルは、Node.js バイナリが `node:crypto` モジュールのサポートを含めてコンパイルされている場合にのみ利用可能です。

DOMException#

WHATWG の DOMException クラスです。詳細については、DOMException を参照してください。

TextDecoder#

WHATWG の TextDecoder クラスです。TextDecoder セクションを参照してください。

クラス: TextDecoderStream#

安定性: 1 - 実験的。

TextDecoderStream のブラウザ互換実装です。

TextEncoder#

WHATWG の TextEncoder クラスです。TextEncoder セクションを参照してください。

クラス: TextEncoderStream#

安定性: 1 - 実験的。

TextEncoderStream のブラウザ互換実装です。

クラス: TransformStream#

安定性: 1 - 実験的。

TransformStream のブラウザ互換実装です。

クラス: TransformStreamDefaultController#

安定性: 1 - 実験的。

TransformStreamDefaultController のブラウザ互換実装です。

URL#

WHATWG の URL クラスです。URL セクションを参照してください。

URLSearchParams#

WHATWG の URLSearchParams クラスです。URLSearchParams セクションを参照してください。

WebAssembly#

W3C の WebAssembly 関連のすべての機能の名前空間として機能するオブジェクトです。使用法と互換性については、Mozilla Developer Network を参照してください。

WebSocket#

安定性: 1 - 実験的。

WebSocket のブラウザ互換実装です。このAPIを有効にするには、--experimental-websocket CLI フラグを使用してください。

クラス: WritableStream#

安定性: 1 - 実験的。

WritableStream のブラウザ互換実装です。

クラス: WritableStreamDefaultController#

安定性: 1 - 実験的。

WritableStreamDefaultController のブラウザ互換実装です。

クラス: WritableStreamDefaultWriter#

安定性: 1 - 実験的。

WritableStreamDefaultWriter のブラウザ互換実装です。