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

モジュールユーティリティ

共通ツールモジュール

オブジェクト

LruCache

LRU (最も長く使用されていない) キャッシュ オブジェクトについては、を参照してください。 LruCache オブジェクト。

1
LruCache util.LruCache;

静的関数

format

指定されたフォーマットに従って変数をフォーマットする

1 2
static String util.format(String fmt, ...args);

呼び出しパラメータ:

  • fmt: 文字列、フォーマット文字列
  • args: ...、オプションのパラメータ リスト

結果を返す:

  • String、フォーマットされた文字列を返します

変数のフォーマット

1
static String util.format(...args);

呼び出しパラメータ:

  • args: ...、オプションのパラメータ リスト

結果を返す:

  • String、フォーマットされた文字列を返します

inherits

あるコンストラクターから別のコンストラクターにプロトタイプ関数を継承します。コンストラクターのプロトタイプは、superConstructor から作成された新しいオブジェクトに設定されます。

1 2
static util.inherits(Value constructor, Value superConstructor);

呼び出しパラメータ:

  • constructor: 値、初期コンストラクター
  • superConstructor: 値、継承されるスーパークラス

inspect

この関数は、主にデバッグに使用される obj の文字列表現を返します。追加のオプションを使用して、フォーマット文字列の特定の側面を変更できます。

1 2
static String util.inspect(Object obj, Object options = {});

呼び出しパラメータ:

  • obj: オブジェクト、処理するオブジェクトを指定します
  • options: オブジェクト、フォーマット制御オプションを指定

結果を返す:

  • String、フォーマットされた文字列を返します

deprecate

指定された関数をカプセル化します。この関数は互換性があるだけで、警告を出力しません

1 2 3
static Function util.deprecate(Function fn, String msg, String code = "");

呼び出しパラメータ:

  • fn: 関数、カプセル化する関数を指定
  • msg: 文字列、警告メッセージを指定
  • code: 文字列、指定された警告番号

結果を返す:

  • Function、カプセル化結果

isEmpty

指定された変数に値が含まれていない (列挙可能な属性がない) かどうかを確認します。

1
static Boolean util.isEmpty(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 空ならTrueを返す

isArray

指定された変数が配列かどうかを確認します

1
static Boolean util.isArray(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、配列の場合はTrueを返します

isBoolean

指定された変数がブール値かどうかを確認します

1
static Boolean util.isBoolean(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、ブール値の場合は True を返します

isNull

指定された変数が Null かどうかを確認します

1
static Boolean util.isNull(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、Nullの場合はTrueを返します

isNullOrUndefined

指定された変数が Null または Undefined かどうかを確認します

1
static Boolean util.isNullOrUndefined(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, Null または Undefined の場合は True を返します

isNumber

指定された変数が数値かどうかを確認します

1
static Boolean util.isNumber(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 数値ならTrueを返す

isBigInt

指定された変数が BigInt かどうかを確認します

1
static Boolean util.isBigInt(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 数値ならTrueを返す

isString

指定された変数が文字列かどうかを確認します

1
static Boolean util.isString(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 文字列の場合は True を返します

isUndefined

指定された変数が未定義かどうかを確認します

1
static Boolean util.isUndefined(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 未定義の場合は True を返します

isRegExp

指定された変数が通常のオブジェクトかどうかを確認します

1
static Boolean util.isRegExp(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 通常のオブジェクトの場合は True を返します

isObject

指定された変数がオブジェクトかどうかを確認します

1
static Boolean util.isObject(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, オブジェクトの場合は True を返します

isDate

指定された変数が日付オブジェクトかどうかを確認します

1
static Boolean util.isDate(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 日付オブジェクトの場合は True を返します

isNativeError

指定された変数が間違ったオブジェクトかどうかを確認します

1
static Boolean util.isNativeError(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, エラーオブジェクトの場合は True を返します

isPrimitive

指定された変数がプリミティブ型かどうかを確認します

1
static Boolean util.isPrimitive(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, プリミティブ型ならTrueを返す

isSymbol

指定された変数が Symbol 型かどうかを確認します

1
static Boolean util.isSymbol(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、シンボル型の場合はTrueを返します

isDataView

指定された変数が DataView タイプかどうかを確認します

1
static Boolean util.isDataView(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, DataView タイプの場合は True を返します

isExternal

指定された変数が外部タイプかどうかを確認します

1
static Boolean util.isExternal(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、External 型の場合は True を返します

isMap

指定された変数がマップ型かどうかを確認します

1
static Boolean util.isMap(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, Map型ならTrueを返す

isMapIterator

指定された変数が MapIterator 型かどうかを確認します

1
static Boolean util.isMapIterator(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, MapIterator 型の場合は True を返します

isPromise

指定された変数が Promise 型かどうかを確認します

1
static Boolean util.isPromise(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, Promise 型なら True を返す

isAsyncFunction

指定された変数が AsyncFunction 型かどうかを確認します

1
static Boolean util.isAsyncFunction(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、タイプが AsyncFunction の場合は True を返します

isSet

指定された変数が Set 型かどうかを確認します

1
static Boolean util.isSet(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、Set型ならTrueを返す

isSetIterator

指定された変数が SetIterator 型かどうかを確認します

1
static Boolean util.isSetIterator(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, SetIterator 型の場合は True を返します

isTypedArray

指定された変数が TypedArray 型かどうかを確認します

1
static Boolean util.isTypedArray(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、TypedArray 型の場合は True を返します

isUint8Array

指定された変数が Uint8Array 型かどうかを確認します

1
static Boolean util.isUint8Array(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, Uint8Array 型の場合は True を返します

isFunction

指定された変数が関数オブジェクトかどうかを確認します

1
static Boolean util.isFunction(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean, 関数オブジェクトの場合は True を返します

isBuffer

指定された変数が関数かどうかを確認します Buffer オブジェクト

1
static Boolean util.isBuffer(Value v);

呼び出しパラメータ:

  • v: テストする変数を指定した値

結果を返す:

  • Boolean、関数だと Buffer オブジェクトは True を返します

has

指定されたオブジェクトに指定されたキーが含まれているかどうかを照会します

1 2
static Boolean util.has(Value v, String key);

呼び出しパラメータ:

  • v: 照会するオブジェクトを指定した値
  • key: 文字列、照会するキーを指定

結果を返す:

  • Boolean, オブジェクトのすべてのキーの配列を返します

keys

指定されたオブジェクトのすべてのキー配列を照会します

1
static Array util.keys(Value v);

呼び出しパラメータ:

  • v: 照会するオブジェクトを指定した値

結果を返す:

  • Array, オブジェクトのすべてのキーの配列を返します

values

指定されたオブジェクトのすべての値の配列を照会します

1
static Array util.values(Value v);

呼び出しパラメータ:

  • v: 照会するオブジェクトを指定した値

結果を返す:

  • Array、オブジェクトのすべての値の配列を返します

clone

指定された変数を複製し、それがオブジェクトまたは配列の場合は、コンテンツを新しいオブジェクトにコピーします

1
static Value util.clone(Value v);

呼び出しパラメータ:

  • v: クローンされる変数を指定した値

結果を返す:

  • Value, クローンした結果を返す

deepFreeze

オブジェクトをディープ フリーズします。フリーズされたオブジェクトとそれに含まれるオブジェクトは変更できません

1
static util.deepFreeze(Value v);

呼び出しパラメータ:

  • v: 値、凍結するオブジェクトを指定します

extend

1 つ以上のオブジェクトのキー値を指定されたオブジェクトに拡張します

1 2
static Value util.extend(Value v, ...objs);

呼び出しパラメータ:

  • v: 値、展開するオブジェクトを指定します
  • objs: ...、展開する 1 つ以上のオブジェクトを指定します

結果を返す:

  • Value, 展開された結果を返します

_extend

1 つ以上のオブジェクトのキー値を、extend のエイリアスである指定されたオブジェクトに拡張します。

1 2
static Value util._extend(Value v, ...objs);

呼び出しパラメータ:

  • v: 値、展開するオブジェクトを指定します
  • objs: ...、展開する 1 つ以上のオブジェクトを指定します

結果を返す:

  • Value, 展開された結果を返します

pick

返すobjectコピーして、指定されたキーの属性値のみを除外します

1 2
static Object util.pick(Value v, ...objs);

呼び出しパラメータ:

  • v: 値、フィルタリングするオブジェクトを指定します
  • objs: ...、選択のための 1 つまたは複数のキーを指定します

結果を返す:

  • Object、フィルタリングされた結果を返す

omit

返すobjectコピー、指定されたキーの属性値を除外するだけ

1 2
static Object util.omit(Value v, ...keys);

呼び出しパラメータ:

  • v: 値、フィルタリングするオブジェクトを指定します
  • keys: ...、除外する 1 つ以上のキーを指定します

結果を返す:

  • Object、除外された結果を返します

first

配列の最初の要素を取得します

1
static Value util.first(Value v);

呼び出しパラメータ:

  • v: 取得する配列を指定した値

結果を返す:

  • Value、取得した要素を返す

配列の最初の複数の要素を取得します

1 2
static Value util.first(Value v, Integer n);

呼び出しパラメータ:

  • v: 取得する配列を指定した値
  • n: 整数、取得する要素の数を指定

結果を返す:

  • Value、取得した要素配列を返します

last

配列の最初の要素を取得します

1
static Value util.last(Value v);

呼び出しパラメータ:

  • v: 取得する配列を指定した値

結果を返す:

  • Value、取得した要素を返す

配列の最後にある複数の要素を取得する

1 2
static Value util.last(Value v, Integer n);

呼び出しパラメータ:

  • v: 取得する配列を指定した値
  • n: 整数、取得する要素の数を指定

結果を返す:

  • Value、取得した要素配列を返します

unique

重複排除後に配列の要素のコピーを取得する

1 2
static Array util.unique(Value v, Boolean sorted = false);

呼び出しパラメータ:

  • v: 重複排除するアレイを指定した値
  • sorted: ブール値、配列がソートされるかどうかを指定します。配列がソートされるように指定されている場合、高速アルゴリズムが使用されます

結果を返す:

  • Array, 重複した要素を削除して配列を返す

union

1 つ以上の配列の値を一意の値を持つ配列に結合します

1
static Array util.union(...arrs);

呼び出しパラメータ:

  • arrs: ...、マージする 1 つ以上の配列を指定します

結果を返す:

  • Array, マージされた結果を返す

intersection

arr を含み、1 つ以上の配列要素を除く配列の交差を返します。

1
static Array util.intersection(...arrs);

呼び出しパラメータ:

  • arrs: ...、交差を計算するための 1 つ以上の配列を指定します

結果を返す:

  • Array, 交差を計算した結果を返します

flatten

複数レベルのネスト (ネストは任意の数のレベル) を持つ配列を、1 レベルのみの配列に変換します。浅いパラメーターを渡すと、配列は 1 次元のネストのみを減らします。

1 2
static Array util.flatten(Value arr, Boolean shallow = false);

呼び出しパラメータ:

  • arr: 値、変換する配列を指定します
  • shallow: ブール値、1 次元のネストのみを削減するかどうかを指定します。デフォルトは false です。

結果を返す:

  • Array, 変換結果を返す

without

arr 配列から除外された 1 つ以上の要素を含む配列を返します。

1 2
static Array util.without(Value arr, ...els);

呼び出しパラメータ:

  • arr: 値、除外する配列を指定します
  • els: ...、除外する 1 つ以上の要素を指定します

結果を返す:

  • Array、除外された結果を返します

difference

arr 配列を含み、配列なしの要素を除外した配列を返します。

1 2
static Array util.difference(Array list, ...arrs);

呼び出しパラメータ:

  • list: 配列、除外する配列を指定します
  • arrs: ...、除外する 1 つ以上の配列を指定します

結果を返す:

  • Array、除外された結果を返します

each

リスト内のすべての要素をトラバースし、トラバーサルで各要素を順番に出力します。context パラメーターが渡されると、反復子は context オブジェクトにバインドされます。イテレータを呼び出すたびに、次の 3 つのパラメータが渡されます: (要素、インデックス、リスト)

1 2 3
static Value util.each(Value list, Function iterator, Value context = undefined);

呼び出しパラメータ:

  • list: 値、トラバースするリストまたはオブジェクトを指定します
  • iterator: 関数、トラバーサルに使用されるコールバック関数を指定します
  • context: 値、イテレータを呼び出すときにバインドされるコンテキスト オブジェクトを指定します

結果を返す:

  • Value, リスト自体を返す

map

変換関数 (イテレータ) を介して、リスト内の各値が新しい配列にマップされます。context パラメーターが渡されると、反復子は context オブジェクトにバインドされます。イテレータを呼び出すたびに、次の 3 つのパラメータが渡されます: (要素、インデックス、リスト)

1 2 3
static Array util.map(Value list, Function iterator, Value context = undefined);

呼び出しパラメータ:

  • list: 値、変換するリストまたはオブジェクトを指定します
  • iterator: 関数、変換に使用されるコールバック関数を指定します
  • context: 値、イテレータを呼び出すときにバインドされるコンテキスト オブジェクトを指定します

結果を返す:

  • Array、変換の結果を返します

reduce

リスト内の要素を単一の値に減らします。context パラメーターが渡されると、反復子は context オブジェクトにバインドされます。イテレータを呼び出すたびに、次の 3 つのパラメータが渡されます: (メモ、要素、インデックス、リスト)

1 2 3 4
static Value util.reduce(Value list, Function iterator, Value memo, Value context = undefined);

呼び出しパラメータ:

  • list: 値、解決するリストまたはオブジェクトを指定します
  • iterator: 関数、解決に使用されるコールバック関数を指定します
  • memo:値、解像度の初期値を指定
  • context: 値、イテレータを呼び出すときにバインドされるコンテキスト オブジェクトを指定します

結果を返す:

  • Value, 解決結果を返す

parseArgs

コマンド ライン文字列を解析し、パラメータ リストを返します。

1
static NArray util.parseArgs(String command);

呼び出しパラメータ:

  • command: 文字列、解析するコマンド ライン文字列を指定します

結果を返す:

  • NArray、解析されたパラメータ リストを返します

compile

スクリプトをバイナリ コードにコンパイルする

1 2 3
static Buffer util.compile(String srcname, String script, Integer mode = 0);

呼び出しパラメータ:

  • srcname: 文字列、追加するスクリプトの名前を指定します
  • script: 文字列、コンパイルするスクリプト コードを指定します
  • mode: 整数、コンパイルモード、0: モジュール、1: スクリプト、2: ワーカー、デフォルトは 0

結果を返す:

  • Buffer, コンパイルされたバイナリ コードを返します

util.compileスクリプトは、v8 内部実行データ ブロック (非マシン実行コード) にコンパイルできます。コンパイルされたコードが *.jsc として保存された後、run および require によって直接ロードして実行できます。

コンパイル後、ターゲット コードは逆にソース コードを取得できなくなり、Function.toString に依存するプログラムは正常に動作しません。


sync

コールバックまたは非同期関数を同期呼び出しとしてラップする

1 2
static Function util.sync(Function func, Boolean async_func = false);

呼び出しパラメータ:

  • func: ラップする関数を指定すると、関数
  • async_func:ブール値、funcを非同期関数として処理することを指定、falseの場合は自動判定

結果を返す:

  • Function, 同期的に実行される関数を返します

util.sync コールバック関数または非同期関数は、簡単に呼び出すための同期関数として扱ってください。

コールバックの例は次のとおりです。

1 2 3 4 5 6 7 8 9 10 11
// callback var util = require('util'); function cb_test(a, b, cb) { setTimeout(() => { cb(null, a + b); }, 100); } var fn_sync = util.sync(cb_test); console.log(fn_sync(100, 200));

非同期の例は次のとおりです。

1 2 3 4 5 6 7 8 9
// async/await var util = require('util'); async function async_test(a, b) { return a + b; } var fn_sync = util.sync(async_test); console.log(fn_sync(100, 200));

非同期としてマークされていない promise を返す関数の場合、同期モードを手動で指定できます。

1 2 3 4 5 6 7 8 9 10 11
// async/await var util = require('util'); function async_test(a, b) { return new Promise(function(resolve, reject) { resolve(a + b); }); } var fn_sync = util.sync(async_test, true); console.log(fn_sync(100, 200));

promisify

コールバック関数を非同期呼び出しとしてラップします

1
static Function util.promisify(Function func);

呼び出しパラメータ:

  • func: ラップする関数を指定すると、関数

結果を返す:

  • Function, 非同期関数を返す

util.promisify コールバック関数は、簡単に呼び出すために非同期関数として扱ってください。

コールバックの例は次のとおりです。

1 2 3 4 5 6 7 8 9 10 11
// callback var util = require('util'); function cb_test(a, b, cb) { setTimeout(() => { cb(null, a + b); }, 100); } var fn_sync = util.promisify(cb_test); console.log(async fn_sync(100, 200));

callbackify

非同期関数をコールバック呼び出しとしてラップする

1
static Function util.callbackify(Function func);

呼び出しパラメータ:

  • func: ラップする関数を指定すると、関数

結果を返す:

  • Function、コールバック関数を返す

util.callbackify 呼び出しを簡単にするために、非同期関数をコールバック関数として扱います。

非同期の例は次のとおりです。

1 2 3 4 5 6 7 8 9 10 11 12
// async var util = require('util'); async function async_test(a, b) { return a + b; } var fn_callback = util.callbackify(async_test); fn_callback(100, 200, (err, result) => { console.log(result); });

buildInfo

現在のエンジンとコンポーネントのバージョン情報を照会する

1
static Object util.buildInfo();

結果を返す:

  • Object, コンポーネントのバージョン オブジェクトを返します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
{ "fibjs": "0.25.0", "clang": "9.1", "date": "Jun 12 2018 07:22:40", "vender": { "ev": "4.24", "expat": "2.2.5", "gd": "2.2.4", "jpeg": "8.3", "leveldb": "1.17", "mongo": "0.7", "pcre": "8.21", "png": "1.5.4", "mbedtls": "2.6.1", "snappy": "1.1.2", "sqlite": "3.23.0", "tiff": "3.9.5", "uuid": "1.6.2", "v8": "6.7.288.20", "v8-snapshot": true, "zlib": "1.2.7", "zmq": "3.1" } }