Module module de base

Module util

Module d'outil commun

Objet

LruCache

Objet de cache LRU (le moins récemment utilisé), voir LruCache Objet.

1
LruCache util.LruCache;

Fonction statique

format

Formater les variables selon le format spécifié

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

Paramètres d'appel :

  • fmt: chaîne, chaîne de format
  • args: ..., liste de paramètres optionnels

Résultat de retour :

  • String, Renvoie la chaîne formatée

Variables de formatage

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

Paramètres d'appel :

  • args: ..., liste de paramètres optionnels

Résultat de retour :

  • String, Renvoie la chaîne formatée

inherits

Hériter de la fonction prototype d'un constructeur à un autre. Le prototype du constructeur sera défini sur un nouvel objet créé à partir du superConstructeur.

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

Paramètres d'appel :

  • constructor: Value, le constructeur initial
  • superConstructor: Value, la superclasse à hériter

inspect

La fonction renvoie la représentation sous forme de chaîne de obj, qui est principalement utilisée pour le débogage. Des options supplémentaires peuvent être utilisées pour modifier certains aspects de la chaîne de format.

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

Paramètres d'appel :

  • obj: Objet, spécifiez l'objet à traiter
  • options: Objet, spécifiez les options de contrôle de format

Résultat de retour :

  • String, Renvoie la chaîne formatée

deprecate

Encapsuler la fonction donnée, cette fonction est uniquement compatible et n'émet pas d'avertissement

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

Paramètres d'appel :

  • fn: Fonction, étant donné la fonction à encapsuler
  • msg: chaîne, message d'avertissement donné
  • code: chaîne, numéro d'avertissement donné

Résultat de retour :

  • Function, Si le résultat de l'encapsulation

isEmpty

Vérifiez si la variable donnée ne contient aucune valeur (pas d'attributs énumérables)

1
static Boolean util.isEmpty(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est vide

isArray

Vérifier si la variable donnée est un tableau

1
static Boolean util.isArray(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un tableau

isBoolean

Vérifiez si la variable donnée est booléenne

1
static Boolean util.isBoolean(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un booléen

isNull

Vérifiez si la variable donnée est Null

1
static Boolean util.isNull(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est Null

isNullOrUndefined

Vérifiez si la variable donnée est Null ou Undefined

1
static Boolean util.isNullOrUndefined(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est Null ou Undefined

isNumber

Vérifier si la variable donnée est un nombre

1
static Boolean util.isNumber(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un nombre

isBigInt

Vérifiez si la variable donnée est BigInt

1
static Boolean util.isBigInt(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un nombre

isString

Vérifiez si la variable donnée est une chaîne

1
static Boolean util.isString(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'une chaîne

isUndefined

Vérifiez si la variable donnée est indéfinie

1
static Boolean util.isUndefined(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il n'est pas défini

isRegExp

Vérifiez si la variable donnée est un objet régulier

1
static Boolean util.isRegExp(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un objet régulier

isObject

Vérifier si la variable donnée est un objet

1
static Boolean util.isObject(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un objet

isDate

Vérifiez si la variable donnée est un objet date

1
static Boolean util.isDate(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un objet date

isNativeError

Vérifiez si la variable donnée est le mauvais objet

1
static Boolean util.isNativeError(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un objet d'erreur

isPrimitive

Vérifier si la variable donnée est de type primitif

1
static Boolean util.isPrimitive(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un type primitif

isSymbol

Vérifiez si la variable donnée est de type Symbole

1
static Boolean util.isSymbol(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, S'il s'agit d'un type Symbol, il renvoie True

isDataView

Vérifiez si la variable donnée est de type DataView

1
static Boolean util.isDataView(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est de type DataView

isExternal

Vérifiez si la variable donnée est de type Externe

1
static Boolean util.isExternal(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, S'il s'agit d'un type externe, il renvoie True

isMap

Vérifiez si la variable donnée est de type Map

1
static Boolean util.isMap(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un type Map

isMapIterator

Vérifiez si la variable donnée est de type MapIterator

1
static Boolean util.isMapIterator(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est de type MapIterator

isPromise

Vérifiez si la variable donnée est de type Promise

1
static Boolean util.isPromise(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un type Promise

isAsyncFunction

Vérifiez si la variable donnée est de type AsyncFunction

1
static Boolean util.isAsyncFunction(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est de type AsyncFunction

isSet

Vérifiez si la variable donnée est de type Set

1
static Boolean util.isSet(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, S'il s'agit d'un type Set, il renvoie True

isSetIterator

Vérifiez si la variable donnée est de type SetIterator

1
static Boolean util.isSetIterator(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est de type SetIterator

isTypedArray

Vérifiez si la variable donnée est de type TypedArray

1
static Boolean util.isTypedArray(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, S'il s'agit d'un type TypedArray, il renvoie True

isUint8Array

Vérifiez si la variable donnée est de type Uint8Array

1
static Boolean util.isUint8Array(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il est de type Uint8Array

isFunction

Vérifier si la variable donnée est un objet fonction

1
static Boolean util.isFunction(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, Renvoie True s'il s'agit d'un objet fonction

isBuffer

Vérifier si la variable donnée est une fonction Buffer Objet

1
static Boolean util.isBuffer(Value v);

Paramètres d'appel :

  • v: Valeur, compte tenu de la variable à tester

Résultat de retour :

  • Boolean, si c'est une fonction Buffer L'objet renvoie True

has

Demande si l'objet spécifié contient la clé donnée

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

Paramètres d'appel :

  • v: Valeur, étant donné l'objet à interroger
  • key: String, spécifiez la clé à interroger

Résultat de retour :

  • Boolean, Renvoie un tableau de toutes les clés de l'objet

keys

Interroger tous les tableaux de clés de l'objet spécifié

1
static Array util.keys(Value v);

Paramètres d'appel :

  • v: Valeur, étant donné l'objet à interroger

Résultat de retour :

  • Array, Renvoie un tableau de toutes les clés de l'objet

values

Interroger le tableau de toutes les valeurs de l'objet spécifié

1
static Array util.values(Value v);

Paramètres d'appel :

  • v: Valeur, étant donné l'objet à interroger

Résultat de retour :

  • Array, Renvoie un tableau de toutes les valeurs de l'objet

clone

Cloner la variable donnée, si c'est un objet ou un tableau, copier le contenu dans le nouvel objet

1
static Value util.clone(Value v);

Paramètres d'appel :

  • v: Valeur, étant donné la variable à cloner

Résultat de retour :

  • Value, Renvoie le résultat cloné

deepFreeze

Geler un objet, l'objet gelé et ses objets contenus ne seront pas autorisés à être modifiés

1
static util.deepFreeze(Value v);

Paramètres d'appel :

  • v: Valeur, spécifiez l'objet à geler

extend

Étendre la valeur clé d'un ou plusieurs objets à l'objet spécifié

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

Paramètres d'appel :

  • v: Valeur, spécifiez l'objet à développer
  • objs: ..., spécifiez un ou plusieurs objets à développer

Résultat de retour :

  • Value, Renvoie le résultat développé

_extend

Étendre la valeur clé d'un ou plusieurs objets à l'objet spécifié, qui est un alias de extend

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

Paramètres d'appel :

  • v: Valeur, spécifiez l'objet à développer
  • objs: ..., spécifiez un ou plusieurs objets à développer

Résultat de retour :

  • Value, Renvoie le résultat développé

pick

Retourner unobjectCopier, filtrer uniquement la valeur d'attribut de la clé spécifiée

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

Paramètres d'appel :

  • v: Valeur, spécifiez l'objet à filtrer
  • objs: ..., spécifiez une ou plusieurs touches de sélection

Résultat de retour :

  • Object, Renvoie le résultat filtré

omit

Retourner unobjectCopier, exclure simplement la valeur d'attribut de la clé spécifiée

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

Paramètres d'appel :

  • v: Valeur, spécifiez l'objet à filtrer
  • keys: ..., spécifiez une ou plusieurs clés à exclure

Résultat de retour :

  • Object, Renvoie les résultats exclus

first

Obtenir le premier élément du tableau

1
static Value util.first(Value v);

Paramètres d'appel :

  • v: Valeur, étant donné le tableau à obtenir

Résultat de retour :

  • Value, Renvoie l'élément récupéré

Obtenir les premiers éléments multiples du tableau

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

Paramètres d'appel :

  • v: Valeur, étant donné le tableau à obtenir
  • n: Entier, précisez le nombre d'éléments à obtenir

Résultat de retour :

  • Value, Renvoie le tableau d'éléments obtenu

last

Obtenir le premier élément du tableau

1
static Value util.last(Value v);

Paramètres d'appel :

  • v: Valeur, étant donné le tableau à obtenir

Résultat de retour :

  • Value, Renvoie l'élément récupéré

Obtenir plusieurs éléments à la fin du tableau

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

Paramètres d'appel :

  • v: Valeur, étant donné le tableau à obtenir
  • n: Entier, précisez le nombre d'éléments à obtenir

Résultat de retour :

  • Value, Renvoie le tableau d'éléments obtenu

unique

Obtenir une copie des éléments du tableau après déduplication

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

Paramètres d'appel :

  • v: Valeur, étant donné le tableau à dédupliquer
  • sorted: Booléen, précise si le tableau est trié ou non, si le tableau est spécifié pour être trié, un algorithme rapide sera utilisé

Résultat de retour :

  • Array, Renvoie le tableau après avoir supprimé les éléments en double

union

Combinez les valeurs d'un ou plusieurs tableaux dans un tableau avec des valeurs uniques

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

Paramètres d'appel :

  • arrs: ..., spécifiez un ou plusieurs tableaux à fusionner

Résultat de retour :

  • Array, Renvoie le résultat fusionné

intersection

Renvoie l'intersection d'un tableau contenant arr et excluant un ou plusieurs éléments de tableau

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

Paramètres d'appel :

  • arrs: ..., spécifiez un ou plusieurs tableaux pour le calcul de l'intersection

Résultat de retour :

  • Array, Renvoie le résultat du calcul de l'intersection

flatten

Convertissez un tableau avec plusieurs niveaux d'imbrication (l'imbrication peut être n'importe quel nombre de niveaux) en un tableau avec un seul niveau. Si vous passez le paramètre superficiel, le tableau ne réduira que l'imbrication unidimensionnelle.

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

Paramètres d'appel :

  • arr: Valeur, spécifiez le tableau à convertir
  • shallow : booléen, spécifiez s'il faut réduire uniquement l'imbrication unidimensionnelle, la valeur par défaut est false

Résultat de retour :

  • Array, Renvoie le résultat de la conversion

without

Renvoie un tableau contenant un ou plusieurs éléments exclus du tableau arr

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

Paramètres d'appel :

  • arr: Valeur, spécifiez le tableau à exclure
  • els: ..., spécifiez un ou plusieurs éléments à exclure

Résultat de retour :

  • Array, Renvoie les résultats exclus

difference

Renvoie un tableau qui contient le tableau arr et exclut l'élément sans tableau

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

Paramètres d'appel :

  • list: Array, spécifiez le tableau à exclure
  • arrs: ..., spécifiez un ou plusieurs tableaux à exclure

Résultat de retour :

  • Array, Renvoie les résultats exclus

each

Parcourez tous les éléments de la liste et affichez chaque élément dans l'ordre avec le parcours. Si le paramètre de contexte est passé, l'itérateur est lié à l'objet de contexte. Chaque appel à l'itérateur passera trois paramètres : (élément, index, liste)

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

Paramètres d'appel :

  • list: Valeur, précise la liste ou l'objet à parcourir
  • iterator: Fonction, spécifiez la fonction de rappel utilisée pour le parcours
  • context: Valeur, spécifiez l'objet de contexte lié lors de l'appel de l'itérateur

Résultat de retour :

  • Value, Retourne la liste elle-même

map

Grâce à la fonction de transformation (itérateur), chaque valeur de la liste est mappée sur un nouveau tableau. Si le paramètre de contexte est passé, l'itérateur est lié à l'objet de contexte. Chaque appel à l'itérateur passera trois paramètres : (élément, index, liste)

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

Paramètres d'appel :

  • list: Valeur, spécifiez la liste ou l'objet à transformer
  • iterator: Fonction, spécifiez la fonction de rappel utilisée pour la transformation
  • context: Valeur, spécifiez l'objet de contexte lié lors de l'appel de l'itérateur

Résultat de retour :

  • Array, Renvoie le résultat de la transformation

reduce

Réduisez les éléments de la liste à une seule valeur. Si le paramètre de contexte est passé, l'itérateur est lié à l'objet de contexte. Chaque appel à l'itérateur passera trois paramètres : (mémo, élément, index, liste)

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

Paramètres d'appel :

  • list: Valeur, spécifiez la liste ou l'objet à résoudre
  • iterator: Fonction, spécifiez la fonction de rappel utilisée pour la résolution
  • memo: Valeur, spécifiez la valeur initiale de la résolution
  • context: Valeur, spécifiez l'objet de contexte lié lors de l'appel de l'itérateur

Résultat de retour :

  • Value, Renvoie le résultat de la résolution

parseArgs

Analyser la chaîne de ligne de commande et renvoyer la liste des paramètres

1
static NArray util.parseArgs(String command);

Paramètres d'appel :

  • command: String, spécifiez la chaîne de ligne de commande à analyser

Résultat de retour :

  • NArray, Renvoie la liste des paramètres analysés

compile

Compiler le script en code binaire

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

Paramètres d'appel :

  • srcname: String, spécifiez le nom du script à ajouter
  • script: String, spécifiez le code du script à compiler
  • mode: Entier, mode compilation, 0 : module, 1 : script, 2 : worker, la valeur par défaut est 0

Résultat de retour :

  • Buffer, Renvoie le code binaire compilé

util.compileLe script peut être compilé dans un bloc de données en cours d'exécution interne v8 (code d'exécution non machine). Une fois le code compilé enregistré en tant que *.jsc, il peut être chargé et exécuté directement par run and require.

Après la compilation, le code cible ne pourra pas obtenir le code source à l'envers, et le programme qui dépend de Function.toString ne s'exécutera pas normalement.


sync

Enveloppez le rappel ou la fonction async en tant qu'appel synchrone

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

Paramètres d'appel :

  • func: Fonction, étant donné la fonction à envelopper
  • async_func: Booléen, spécifiez de traiter func comme fonction asynchrone, s'il est faux, il sera jugé automatiquement

Résultat de retour :

  • Function, Renvoie la fonction qui s'exécute de manière synchrone

util.sync Traitez la fonction de rappel ou la fonction async comme une fonction de synchronisation pour un appel facile.

L'exemple de rappel est le suivant :

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

L'exemple asynchrone est le suivant :

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

Pour les fonctions qui renvoient des promesses qui ne sont pas marquées comme async, vous pouvez spécifier manuellement le mode de synchronisation :

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

Enveloppez la fonction de rappel en tant qu'appel asynchrone

1
static Function util.promisify(Function func);

Paramètres d'appel :

  • func: Fonction, étant donné la fonction à envelopper

Résultat de retour :

  • Function, Renvoie la fonction asynchrone

util.promisify Traitez la fonction de rappel comme une fonction asynchrone pour faciliter les appels.

L'exemple de rappel est le suivant :

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

Enveloppez la fonction asynchrone en tant qu'appel de rappel

1
static Function util.callbackify(Function func);

Paramètres d'appel :

  • func: Fonction, étant donné la fonction à envelopper

Résultat de retour :

  • Function, Fonction de rappel de retour

util.callbackify Traitez la fonction async comme une fonction de rappel pour un appel facile.

L'exemple asynchrone est le suivant :

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

Interroger les informations sur la version actuelle du moteur et du composant

1
static Object util.buildInfo();

Résultat de retour :

  • Object, Renvoie l'objet version du composant
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" } }