モジュール基本モジュール

モジュールグローバル

グローバル オブジェクト、すべてのスクリプトからアクセス可能なベース オブジェクト

オブジェクト

Buffer

のバイナリ データ キャッシュ オブジェクト io データ処理の読み取りと書き込み、を参照してください。 Buffer オブジェクト。

1
Buffer global.Buffer;

console

コンソールアクセスオブジェクト

1
console global.console;

process

処理対象

1
process global.process;

静的関数

run

スクリプトを実行する

1 2
static global.run(String fname, Array argv = []);

呼び出しパラメータ:

  • fname: 文字列、実行するスクリプト パスを指定します
  • argv: 配列、実行するパラメータを指定します。このパラメータは、スクリプトで argv を使用して取得できます

require

モジュールをロードしてモジュールオブジェクトを返します。詳細は @ref モジュールを参照してください

1
static Value global.require(String id);

呼び出しパラメータ:

  • id: 文字列、ロードするモジュールの名前を指定

結果を返す:

  • Value、ロードされたモジュールのエクスポートされたオブジェクトを返します

require は、基本モジュールとファイル モジュールをロードするために使用できます。

基本モジュールは、サンドボックスの作成時に初期化されるモジュールです。必要なのは、require(" など) の参照時に、対応する ID を渡すことだけです。net」)。

ファイルモジュールはユーザー定義モジュールであり、引用時には./または../で始まる相対パスを渡す必要があります。ファイル モジュールは、.js、.jsc、および .jsc をサポートしています。json ファイル。

file モジュールは package.json フォーマットもサポートしています. モジュールがディレクトリ構造を持っている場合、require はまず package.json 内のメインにクエリを実行し、見つからない場合は index.js、index.jsc、または index.js をロードしようとします。パス内の json。

参照パスが ./ または ../ で始まらず、基本モジュールでない場合、require は現在のモジュールが配置されているパスの下で、上位レベルのディレクトリから再帰的に node_modules を検索します。

基本的なプロセスは次のとおりです。

%0 start start is_native is internal module? start->is_native resolve path.resolve has_file module exists? resolve->has_file search recursive lookup node_modules from the current path search->has_file load load end end load->end is_native->end Yes is_mod is module? is_native->is_mod No is_mod->search Yes is_abs is absolute? is_mod->is_abs No is_abs->resolve No is_abs->has_file Yes has_file->load Yes has_ext module.js exists? has_file->has_ext No has_ext->load Yes has_package /package.json exists? has_ext->has_package No has_main main exists? has_package->has_main Yes has_index index.js exists? has_package->has_index No has_main->load Yes has_main->has_index No has_index->load Yes has_index->end No

setTimeout

指定時間後に関数を呼び出す

1 2 3
static Timer global.setTimeout(Function callback, Number timeout = 1, ...args);

呼び出しパラメータ:

  • callback: 関数、コールバック関数を指定
  • timeout: 数値、遅延時間をミリ秒単位で指定します。2^31を超えるとすぐに実行されます。
  • args: ...、指定されたコールバックに渡される追加のパラメータ、オプション。

結果を返す:

  • Timer、タイマー オブジェクトを返します

clearTimeout

指定したタイマーをクリア

1
static global.clearTimeout(Value t);

呼び出しパラメータ:

  • t:値、クリアするタイマーを指定

setInterval

指定された時間間隔ごとに関数を呼び出す

1 2 3
static Timer global.setInterval(Function callback, Number timeout, ...args);

呼び出しパラメータ:

  • callback: 関数、コールバック関数を指定
  • timeout: 指定された間隔の時間 (ミリ秒単位) の数値。2^31を超えるとすぐに実行されます。
  • args: ...、指定されたコールバックに渡される追加のパラメータ、オプション。

結果を返す:

  • Timer、タイマー オブジェクトを返します

clearInterval

指定したタイマーをクリア

1
static global.clearInterval(Value t);

呼び出しパラメータ:

  • t:値、クリアするタイマーを指定

setHrInterval

この関数は、指定された時間間隔ごとに呼び出されます.これは、実行中の JavaScript スクリプト実行タイマーを積極的に中断する高精度タイマーです。

1 2 3
static Timer global.setHrInterval(Function callback, Number timeout, ...args);

呼び出しパラメータ:

  • callback: 関数、コールバック関数を指定
  • timeout: 指定された間隔の時間 (ミリ秒単位) の数値。2^31を超えるとすぐに実行されます。
  • args: ...、指定されたコールバックに渡される追加のパラメータ、オプション。

結果を返す:

  • Timer、タイマー オブジェクトを返します

setHrInterval のタイマーは実行中のコードを中断してコールバックを実行するため、コールバック関数の他のモジュールに影響を与える可能性のあるデータを変更したり、コールバックで async としてマークされた API 関数を呼び出したりしないでください。例えば:

1 2 3 4 5 6 7 8 9 10
var timers = require('timers'); var cnt = 0; timers.setHrInterval(() => { cnt++; }, 100); while (cnt < 10); console.error("===============================> done");

このコードでは、コードを最適化するときに JavaScript がこのサイクル中に cnt が変更されないと判断するため、cnt の変更によって 8 行目のループが終了しません。


clearHrInterval

指定したタイマーをクリア

1
static global.clearHrInterval(Value t);

呼び出しパラメータ:

  • t:値、クリアするタイマーを指定

setImmediate

次の空き時間にすぐにコールバック関数を実行する

1 2
static Timer global.setImmediate(Function callback, ...args);

呼び出しパラメータ:

  • callback: 関数、コールバック関数を指定
  • args: ...、指定されたコールバックに渡される追加のパラメータ、オプション。

結果を返す:

  • Timer、タイマー オブジェクトを返します

clearImmediate

指定したタイマーをクリア

1
static global.clearImmediate(Value t);

呼び出しパラメータ:

  • t:値、クリアするタイマーを指定

GC

強制的なガベージコレクション

1
static global.GC();

静的プロパティ

Master

WorkerWorker ホスト オブジェクト、でのみ Worker エントリースクリプトは有効です

1
static readonly Worker global.Master;

global

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

1
static readonly Object new global;

argv

配列、現在のスクリプトの実行パラメータを取得、jsを起動してプロセス起動パラメータを取得、runによって実行されるスクリプトは渡されたパラメータを取得

1
static readonly Array global.argv;

__filename

文字列、現在のスクリプト ファイル名

1
static readonly String global.__filename;

__dirname

文字列、現在のスクリプトが置かれているディレクトリ

1
static readonly String global.__dirname;