Module Module de base

Utilisation du module

Modules d'outils communs

Objet

LruCache

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

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 facultative

Résultat de retour:

  • String , renvoie la chaîne formatée

Variable de format

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

Paramètres d'appel:

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

Résultat de retour:

  • String , renvoie la chaîne formatée

inherits

Héritez des méthodes de prototype d'un constructeur à un autre. Le prototype du constructeur sera défini sur un nouvel objet créé à partir de la super classe (superConstructor).

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

Paramètres d'appel:

  • constructor : valeur, constructeur initial
  • superConstructor : valeur, superclasse héritée

inspect

La méthode renvoie une représentation sous forme de chaîne d'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 du format

Résultat de retour:

  • String , renvoie la chaîne formatée

deprecate

Encapsule la méthode donnée, cette méthode est uniquement compatible et ne génère pas d'avertissement

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

Paramètres d'appel:

  • fn : fonction, compte tenu de la méthode à 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 à détecter

Résultat de retour:

  • Boolean ou True si vide

isArray

Vérifie si une variable donnée est un tableau

1
static Boolean util.isArray(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean ou 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 à détecter

Résultat de retour:

  • Boolean ou Vrai si booléen

isNull

Vérifie 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 à détecter

Résultat de retour:

  • Boolean ou True if 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 à détecter

Résultat de retour:

  • Boolean ou True si Null ou Undefined

isNumber

Vérifie si une variable donnée est un nombre

1
static Boolean util.isNumber(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean ou 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 à détecter

Résultat de retour:

  • Boolean ou True s'il s'agit d'un nombre

isString

Vérifie si une 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 à détecter

Résultat de retour:

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

isUndefined

Vérifiez si la variable donnée n'est pas définie

1
static Boolean util.isUndefined(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean ou True si non défini

isRegExp

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean s'il s'agit d'un objet normal

isObject

Vérifie si une variable donnée est un objet

1
static Boolean util.isObject(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean ou True s'il s'agit d'un objet

isDate

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean 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 à détecter

Résultat de retour:

  • Boolean s'il s'agit d'un objet d'erreur

isPrimitive

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean s'il est 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 à détecter

Résultat de retour:

  • Boolean , retourne True s'il s'agit d'un type de symbole

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 à détecter

Résultat de retour:

  • Boolean s'il est de type DataView

isExternal

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

1
static Boolean util.isExternal(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean s'il est externe

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 à détecter

Résultat de retour:

  • Boolean s'il est de type Map

isMapIterator

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean 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 à détecter

Résultat de retour:

  • Boolean s'il est de type Promise

isAsyncFunction

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean 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 à détecter

Résultat de retour:

  • Boolean s'il est de type Set

isSetIterator

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean s'il est de type SetIterator

isTypedArray

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

1
static Boolean util.isTypedArray(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean s'il s'agit d'un type TypedArray

isUint8Array

Vérifie 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 à détecter

Résultat de retour:

  • Boolean si Uint8Array

isFunction

Vérifie si une 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 à détecter

Résultat de retour:

  • Boolean s'il s'agit d'un objet fonction

isBuffer

Vérifiez si la variable donnée est un objet Buffer fonction

1
static Boolean util.isBuffer(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à détecter

Résultat de retour:

  • Boolean s'il s'agit d'un objet Buffer fonction

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, compte tenu de l'objet à interroger
  • key : String, spécifiez la clé à interroger

Résultat de retour:

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

keys

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

1
static Array util.keys(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de l'objet à interroger

Résultat de retour:

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

values

Recherchez tous les tableaux de valeurs de l'objet spécifié

1
static Array util.values(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de l'objet à interroger

Résultat de retour:

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

clone

Clonez la variable donnée, s'il s'agit d'un objet ou d'un tableau, copiez le contenu dans le nouvel objet

1
static Value util.clone(Value v);

Paramètres d'appel:

  • v : valeur, compte tenu de la variable à cloner

Résultat de retour:

  • Value , retourne le résultat du clone

deepFreeze

Geler en profondeur un objet, l'objet gelé et les 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 à figer

extend

Développez la valeur de clé d'un ou plusieurs objets jusqu'à 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 , retourne le résultat développé

_extend

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

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 , retourne le résultat développé

pick

Renvoyer une copie de l' object , 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 pour la sélection

Résultat de retour:

  • Object , retourne le résultat filtré

omit

Renvoie une copie de l' object , exclut uniquement 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 , retourne le résultat exclu

first

Récupère le premier élément d'un tableau

1
static Value util.first(Value v);

Paramètres d'appel:

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

Résultat de retour:

  • Value , retourne l'élément obtenu

Obtenez les premiers éléments d'un tableau

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

Paramètres d'appel:

  • v : valeur, étant donné le tableau à obtenir
  • n : Entier, spécifiez le nombre d'éléments à obtenir

Résultat de retour:

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

last

Récupère le dernier élément d'un tableau

1
static Value util.last(Value v);

Paramètres d'appel:

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

Résultat de retour:

  • Value , retourne l'élément obtenu

Récupère plusieurs éléments à la fin d'un tableau

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

Paramètres d'appel:

  • v : valeur, étant donné le tableau à obtenir
  • n : Entier, spécifiez le nombre d'éléments à obtenir

Résultat de retour:

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

unique

Obtenez une copie en double des éléments du tableau

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

Paramètres d'appel:

  • v : valeur, étant donné le tableau à dédupliquer
  • sorted : Boolean, spécifie si le tableau est trié, si le tableau est spécifié pour trier, un algorithme rapide sera utilisé

Résultat de retour:

  • Array , retourne le tableau après déduplication

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 pour la fusion

Résultat de retour:

  • Array , retourne le résultat fusionné

intersection

Renvoie une intersection contenant un ou plusieurs éléments du tableau dans le tableau arr

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

Paramètres d'appel:

  • arrs : ..., spécifiez un ou plusieurs tableaux utilisés pour calculer l'intersection

Résultat de retour:

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

flatten

Convertissez un tableau multicouche imbriqué (l'imbrication peut être un nombre quelconque de couches) en un tableau avec une seule couche. Si vous passez le paramètre peu profond, 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 : Boolean, spécifie si seule l'imbrication unidimensionnelle est réduite, la valeur par défaut est false

Résultat de retour:

  • Array , retourne le résultat converti

without

Renvoie un tableau contenant un ou plusieurs éléments dans le 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 , retourne le résultat exclu

difference

Renvoie un tableau contenant le tableau arr après avoir exclu les éléments de 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 , retourne le résultat exclu

each

Parcourez tous les éléments de la liste et sortez chaque élément en séquence à l'aide de la traversée. Si le paramètre context est passé, l'itérateur est lié à l'objet context. 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, spécifiez la liste ou l'objet à parcourir
  • iterator : Fonction, spécifie la fonction de rappel utilisée pour la traversée
  • context : Value, spécifie l'objet contextuel à lier lors de l'appel de l'itérateur

Résultat de retour:

  • Value , renvoyer la liste elle-même

map

Mappez chaque valeur de la liste à un nouveau tableau via une fonction de transformation (itérateur). Si le paramètre context est passé, l'itérateur est lié à l'objet context. 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 : Value, spécifie l'objet contextuel à lier lors de l'appel de l'itérateur

Résultat de retour:

  • Array , retourne le résultat transformé

reduce

Les éléments de la liste sont réduits à une seule valeur. Si le paramètre context est passé, l'itérateur est lié à l'objet context. 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écifie la fonction de rappel utilisée pour la résolution
  • memo : Valeur, spécifiez la valeur initiale de la memo
  • context : Value, spécifie l'objet contextuel à lier lors de l'appel de l'itérateur

Résultat de retour:

  • Value , renvoie le résultat attribué

compile

Compilez 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écifie le code de script à compiler
  • mode : Entier, mode de compilation, 0: module, 1: script, 2: travailleur, la valeur par défaut est 0

Résultat de retour:

  • Buffer , retourne le code binaire compilé

util.compile peut compiler le script en blocs de données en cours d'exécution internes à la v8 (code exécutable non-machine). Une fois le code compilé enregistré sous * .jsc, il peut être directement chargé et exécuté par run et require.

Après la compilation, le code cible ne pourra pas obtenir le code source dans le sens inverse et les programmes qui dépendent de Function.toString ne fonctionneront pas correctement.


sync

Wrap callback ou async method for synchronous call

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

Paramètres d'appel:

  • func : Function, étant donné la méthode qui doit être encapsulée
  • async_func : booléen, spécifiez pour traiter func avec la fonction async, si faux, il sera jugé automatiquement

Résultat de retour:

  • Function , retourne la méthode de fonctionnement synchrone

util.sync traite la méthode de rappel ou la méthode async comme une méthode de synchronisation pour faciliter l'appel.

Voici des exemples de rappels:

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

Des exemples d'async sont les suivants:

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

buildInfo

Recherchez des informations sur la version actuelle du moteur et des composants

1
static Object util.buildInfo();

Résultat de retour:

  • Object , renvoie l'objet de 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" } }