Módulo módulo básico

Módulo util

Módulo de herramienta común

Objeto

LruCache

Objeto de caché LRU (menos utilizado recientemente), consulte LruCache Objeto.

1
LruCache util.LruCache;

Función estática

format

Dar formato a las variables de acuerdo con el formato especificado

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

Parámetros de llamada:

  • fmt: Cadena, cadena de formato
  • args: ..., lista de parámetros opcionales

Devolver resultado:

  • String, Devuelve la cadena formateada

Formateo de variables

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

Parámetros de llamada:

  • args: ..., lista de parámetros opcionales

Devolver resultado:

  • String, Devuelve la cadena formateada

inherits

Hereda la función prototipo de un constructor a otro. El prototipo del constructor se establecerá en un nuevo objeto creado a partir del superConstructor.

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

Parámetros de llamada:

  • constructor: Valor, el constructor inicial
  • superConstructor: Valor, la superclase que se heredará

inspect

La función devuelve la representación de cadena de obj, que se utiliza principalmente para depurar. Se pueden usar opciones adicionales para cambiar ciertos aspectos de la cadena de formato.

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

Parámetros de llamada:

  • obj: Valor, especifique el objeto a procesar
  • options: Objeto, especificar opciones de control de formato

Devolver resultado:

  • String, Devuelve la cadena formateada

Se admiten los siguientes parámetros:

1 2 3 4 5 6
{ "colors": false, // 指定是否输出 ansi 作色字符串,缺省为 false "table": false, // 指定输出 table 格式,缺省为 false "encode_string": true, // 指定表格中的字符串是否编码,缺省为 true "fields": [], // 当 table 为 true 时指定显示字段 }

deprecate

Encapsula la función dada, esta función solo es compatible y no genera una advertencia

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

Parámetros de llamada:

  • fn: Función, dada la función a encapsular
  • msg: Cadena, mensaje de advertencia dado
  • code: Cadena, número de advertencia dado

Devolver resultado:

  • Function, Si el resultado de la encapsulación

isEmpty

Verifique si la variable dada no contiene ningún valor (no hay atributos enumerables)

1
static Boolean util.isEmpty(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si está vacío

isArray

Verifique si la variable dada es una matriz

1
static Boolean util.isArray(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es una matriz

isBoolean

Compruebe si la variable dada es booleana

1
static Boolean util.isBoolean(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve verdadero si es booleano

isNull

Compruebe si la variable dada es nula

1
static Boolean util.isNull(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve verdadero si es nulo

isNullOrUndefined

Compruebe si la variable dada es nula o indefinida

1
static Boolean util.isNullOrUndefined(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve verdadero si es nulo o indefinido

isNumber

Compruebe si la variable dada es un número

1
static Boolean util.isNumber(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve Verdadero si es un número

isBigInt

Compruebe si la variable dada es BigInt

1
static Boolean util.isBigInt(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve Verdadero si es un número

isString

Verifique si la variable dada es una cadena

1
static Boolean util.isString(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es una cadena

isUndefined

Compruebe si la variable dada no está definida

1
static Boolean util.isUndefined(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve verdadero si no está definido

isRegExp

Verifique si la variable dada es un objeto regular

1
static Boolean util.isRegExp(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un objeto regular

isObject

Verifique si la variable dada es un objeto

1
static Boolean util.isObject(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un objeto

isDate

Verifique si la variable dada es un objeto de fecha

1
static Boolean util.isDate(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un objeto de fecha

isNativeError

Compruebe si la variable dada es el objeto incorrecto

1
static Boolean util.isNativeError(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un objeto de error

isPrimitive

Compruebe si la variable dada es de tipo primitivo

1
static Boolean util.isPrimitive(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un tipo primitivo

isSymbol

Compruebe si la variable dada es de tipo Símbolo

1
static Boolean util.isSymbol(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Si es de tipo Símbolo, devuelve Verdadero

isDataView

Compruebe si la variable dada es de tipo DataView

1
static Boolean util.isDataView(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es de tipo DataView

isExternal

Compruebe si la variable dada es de tipo Externo

1
static Boolean util.isExternal(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Si es de tipo Externo, devuelve Verdadero

isMap

Compruebe si la variable dada es de tipo Mapa

1
static Boolean util.isMap(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve verdadero si es un tipo de mapa

isMapIterator

Compruebe si la variable dada es de tipo MapIterator

1
static Boolean util.isMapIterator(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es del tipo MapIterator

isPromise

Verifique si la variable dada es del tipo Promise

1
static Boolean util.isPromise(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un tipo de Promesa

isAsyncFunction

Compruebe si la variable dada es de tipo AsyncFunction

1
static Boolean util.isAsyncFunction(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es de tipo AsyncFunction

isSet

Compruebe si la variable dada es de tipo Set

1
static Boolean util.isSet(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Si es un tipo Set, devuelve True

isSetIterator

Compruebe si la variable dada es de tipo SetIterator

1
static Boolean util.isSetIterator(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es de tipo SetIterator

isTypedArray

Compruebe si la variable dada es de tipo TypedArray

1
static Boolean util.isTypedArray(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Si es un tipo TypedArray, devuelve True

isUint8Array

Compruebe si la variable dada es de tipo Uint8Array

1
static Boolean util.isUint8Array(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es de tipo Uint8Array

isFunction

Verifique si la variable dada es un objeto de función

1
static Boolean util.isFunction(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Devuelve True si es un objeto de función

isBuffer

Compruebe si la variable dada es una función Buffer Objeto

1
static Boolean util.isBuffer(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a probar

Devolver resultado:

  • Boolean, Si es una función Buffer El objeto devuelve True

isDeepEqual

La profundidad del valor de prueba es igual al valor esperado

1 2
static Boolean util.isDeepEqual(Value actual, Value expected);

Parámetros de llamada:

  • actual: Valor, el valor que se va a probar
  • expected: Valor, valor esperado

Devolver resultado:

  • Boolean, Devuelve True si las profundidades son iguales

has

Consultar si el objeto especificado contiene la clave dada

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

Parámetros de llamada:

  • v: Valor, dado el objeto a consultar
  • key: Cadena, especifique la clave a consultar

Devolver resultado:

  • Boolean, Devuelve una matriz de todas las claves del objeto

keys

Consultar todas las matrices de claves del objeto especificado

1
static Array util.keys(Value v);

Parámetros de llamada:

  • v: Valor, dado el objeto a consultar

Devolver resultado:

  • Array, Devuelve una matriz de todas las claves del objeto

values

Consultar la matriz de todos los valores del objeto especificado

1
static Array util.values(Value v);

Parámetros de llamada:

  • v: Valor, dado el objeto a consultar

Devolver resultado:

  • Array, Devuelve una matriz de todos los valores del objeto.

clone

Clona la variable dada, si es un objeto o una matriz, copia el contenido al nuevo objeto

1
static Value util.clone(Value v);

Parámetros de llamada:

  • v: Valor, dada la variable a clonar

Devolver resultado:

  • Value, Devuelve el resultado clonado

deepFreeze

Deep freeze un objeto, el objeto congelado y sus objetos contenidos no podrán ser modificados

1
static util.deepFreeze(Value v);

Parámetros de llamada:

  • v: Valor, especifique el objeto a congelar

extend

Extienda el valor clave de uno o más objetos al objeto especificado

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

Parámetros de llamada:

  • v: Valor, especifique el objeto a expandir
  • objs: ..., especifique uno o más objetos para expandir

Devolver resultado:

  • Value, Devuelve el resultado expandido

_extend

Extiende el valor clave de uno o más objetos al objeto especificado, que es un alias de extender

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

Parámetros de llamada:

  • v: Valor, especifique el objeto a expandir
  • objs: ..., especifique uno o más objetos para expandir

Devolver resultado:

  • Value, Devuelve el resultado expandido

pick

Devolver unobjectCopiar, solo filtrar el valor de atributo de la clave especificada

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

Parámetros de llamada:

  • v: Valor, especifique el objeto a filtrar
  • objs: ..., especifique una o más teclas para la selección

Devolver resultado:

  • Object, Devuelve el resultado filtrado

omit

Devolver unobjectCopiar, simplemente excluir el valor de atributo de la clave especificada

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

Parámetros de llamada:

  • v: Valor, especifique el objeto a filtrar
  • keys: ..., especifique una o más claves para excluir

Devolver resultado:

  • Object, Devuelve resultados excluidos

first

Obtenga el primer elemento de la matriz

1
static Value util.first(Value v);

Parámetros de llamada:

  • v: Valor, dada la matriz a obtener

Devolver resultado:

  • Value, Devuelve el elemento recuperado

Obtenga los primeros elementos múltiples de la matriz

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

Parámetros de llamada:

  • v: Valor, dada la matriz a obtener
  • n: Entero, especifique el número de elementos a obtener

Devolver resultado:

  • Value, Devuelve la matriz de elementos obtenida

last

Obtenga el primer elemento de la matriz

1
static Value util.last(Value v);

Parámetros de llamada:

  • v: Valor, dada la matriz a obtener

Devolver resultado:

  • Value, Devuelve el elemento recuperado

Obtenga varios elementos al final de la matriz

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

Parámetros de llamada:

  • v: Valor, dada la matriz a obtener
  • n: Entero, especifique el número de elementos a obtener

Devolver resultado:

  • Value, Devuelve la matriz de elementos obtenida

unique

Obtenga una copia de los elementos de la matriz después de la deduplicación

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

Parámetros de llamada:

  • v: Valor, dada la matriz que se va a deduplicar
  • sorted: Booleano, especifique si la matriz está ordenada o no, si la matriz se especifica para ser ordenada, se utilizará un algoritmo rápido

Devolver resultado:

  • Array, Devuelve la matriz después de la deduplicación

union

Combine los valores de una o más matrices en una matriz con valores únicos

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

Parámetros de llamada:

  • arrs: ..., especifique una o más matrices para fusionar

Devolver resultado:

  • Array, Devuelve el resultado combinado

intersection

Devuelve la intersección de una matriz que contiene arr y excluye uno o más elementos de la matriz

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

Parámetros de llamada:

  • arrs: ..., especifique una o más matrices para calcular la intersección

Devolver resultado:

  • Array, Devuelve el resultado de calcular la intersección

flatten

Convierta una matriz con varios niveles de anidación (la anidación puede ser cualquier número de niveles) en una matriz con un solo nivel. Si pasa el parámetro superficial, la matriz solo reducirá el anidamiento unidimensional.

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

Parámetros de llamada:

  • arr: Valor, especifique la matriz a convertir
  • shallow: Booleano, especifique si desea reducir solo el anidamiento unidimensional, el valor predeterminado es falso

Devolver resultado:

  • Array, Devuelve el resultado de la conversión

without

Devuelve una matriz que contiene uno o más elementos excluidos de la matriz de arr

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

Parámetros de llamada:

  • arr: Valor, especifique la matriz que se excluirá
  • els: ..., especifique uno o más elementos para excluir

Devolver resultado:

  • Array, Devuelve resultados excluidos

difference

Devuelve una matriz que contiene la matriz arr y excluye el elemento sin matriz

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

Parámetros de llamada:

  • list: Matriz, especifique la matriz que se excluirá
  • arrs: ..., especifique una o más matrices para excluir

Devolver resultado:

  • Array, Devuelve resultados excluidos

each

Recorra todos los elementos de la lista y genere cada elemento en orden con recorrido. Si se pasa el parámetro de contexto, el iterador está vinculado al objeto de contexto. Cada llamada al iterador pasará tres parámetros: (elemento, índice, lista)

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

Parámetros de llamada:

  • list: Valor, especifique la lista u objeto a recorrer
  • iterator: Función, especifica la función de devolución de llamada utilizada para el recorrido.
  • context: Valor, especifica el objeto de contexto vinculado al llamar al iterador

Devolver resultado:

  • Value, Devuelve la lista en sí

map

A través de la función de transformación (iterador), cada valor de la lista se asigna a una nueva matriz. Si se pasa el parámetro de contexto, el iterador está vinculado al objeto de contexto. Cada llamada al iterador pasará tres parámetros: (elemento, índice, lista)

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

Parámetros de llamada:

  • list: Valor, especifique la lista u objeto a transformar
  • iterator: Función, especifique la función de devolución de llamada utilizada para la transformación
  • context: Valor, especifica el objeto de contexto vinculado al llamar al iterador

Devolver resultado:

  • Array, Devuelve el resultado de la transformación.

reduce

Reduzca los elementos de la lista a un solo valor. Si se pasa el parámetro de contexto, el iterador está vinculado al objeto de contexto. Cada llamada al iterador pasará tres parámetros: (memo, elemento, índice, lista)

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

Parámetros de llamada:

  • list: Valor, especifique la lista u objeto a resolver
  • iterator: Función, especifique la función de devolución de llamada utilizada para la resolución
  • memo: Valor, especifique el valor inicial de resolución
  • context: Valor, especifica el objeto de contexto vinculado al llamar al iterador

Devolver resultado:

  • Value, Devuelve el resultado de la resolución

parseArgs

Analizar la cadena de la línea de comando y devolver la lista de parámetros

1
static NArray util.parseArgs(String command);

Parámetros de llamada:

  • command: Cadena, especifique la cadena de línea de comando que se analizará

Devolver resultado:

  • NArray, Devuelve la lista de parámetros analizados

compile

Compilar el script como código binario

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

Parámetros de llamada:

  • srcname: Cadena, especifique el nombre del script que se agregará
  • script: Cadena, especifique el código de secuencia de comandos que se compilará
  • mode: Entero, modo de compilación, 0: módulo, 1: secuencia de comandos, 2: trabajador, el valor predeterminado es 0

Devolver resultado:

  • Buffer, Devuelve el código binario compilado

util.compileEl script se puede compilar en un bloque de datos en ejecución interno v8 (código de ejecución que no es de máquina). Una vez que el código compilado se guarda como * .jsc, se puede cargar y ejecutar directamente mediante run y require.

Después de la compilación, el código de destino no podrá obtener el código fuente a la inversa y el programa que depende de Function.toString no se ejecutará normalmente.


sync

Envuelva la función de devolución de llamada o asíncrona como una llamada sincrónica

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

Parámetros de llamada:

  • func: Función, dada la función que debe ajustarse
  • async_func: Booleano, especifique procesar func como función asíncrona, si es falso, se juzgará automáticamente

Devolver resultado:

  • Function, Devuelve la función que se ejecuta sincrónicamente

util.sync Trate la función de devolución de llamada o la función asíncrona como una función de sincronización para realizar llamadas fácilmente.

El ejemplo de devolución de llamada es el siguiente:

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));

El ejemplo asincrónico es el siguiente:

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));

Para las funciones que devuelven promesas que no están marcadas como asíncronas, puede especificar manualmente el modo de sincronización:

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

Envuelva la función de devolución de llamada como llamada asíncrona

1
static Function util.promisify(Function func);

Parámetros de llamada:

  • func: Función, dada la función que debe ajustarse

Devolver resultado:

  • Function, Devuelve la función asincrónica

util.promisify Trate la función de devolución de llamada como una función asíncrona para realizar llamadas fácilmente.

El ejemplo de devolución de llamada es el siguiente:

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

Envuelva la función asíncrona como una llamada de devolución de llamada

1
static Function util.callbackify(Function func);

Parámetros de llamada:

  • func: Función, dada la función que debe ajustarse

Devolver resultado:

  • Function, Función de devolución de llamada

util.callbackify Trate la función asíncrona como una función de devolución de llamada para llamar fácilmente.

El ejemplo asincrónico es el siguiente:

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

Consultar la información actual de la versión del motor y del componente

1
static Object util.buildInfo();

Devolver resultado:

  • Object, Devuelve el objeto de la versión del componente
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" } }