Utilità del modulo
Modulo strumento comune
Oggetto
LruCache
Oggetto cache LRU (usato meno di recente), vedere LruCache Oggetto.
1LruCache util.LruCache;
Funzione statica
format
Formatta le variabili in base al formato specificato
1
2static String util.format(String fmt,
...args);
Parametri di chiamata:
- fmt: Stringa, stringa di formato
- args: ..., elenco parametri opzionale
Risultato di ritorno:
- String, Restituisce la stringa formattata
Variabili di formattazione
1static String util.format(...args);
Parametri di chiamata:
- args: ..., elenco parametri opzionale
Risultato di ritorno:
- String, Restituisce la stringa formattata
inherits
Eredita la funzione prototipo da un costruttore all'altro. Il prototipo del costruttore verrà impostato su un nuovo oggetto creato dal superConstructor.
1
2static util.inherits(Value constructor,
Value superConstructor);
Parametri di chiamata:
- constructor: Value, il costruttore iniziale
- superConstructor: Value, la superclasse da ereditare
inspect
La funzione restituisce la rappresentazione di stringa di obj, utilizzata principalmente per il debug. È possibile utilizzare opzioni aggiuntive per modificare alcuni aspetti della stringa di formato.
1
2static String util.inspect(Value obj,
Object options = {});
Parametri di chiamata:
- obj: Valore, specificare l'oggetto da elaborare
- options: Oggetto, specifica le opzioni di controllo del formato
Risultato di ritorno:
- String, Restituisce la stringa formattata
Sono supportati i seguenti parametri:
1
2
3
4
5
6{
"colors": false, // 指定是否输出 ansi 作色字符串,缺省为 false
"table": false, // 指定输出 table 格式,缺省为 false
"encode_string": true, // 指定表格中的字符串是否编码,缺省为 true
"fields": [], // 当 table 为 true 时指定显示字段
}
deprecate
Incapsula la funzione data, questa funzione è compatibile solo e non emette un avviso
1
2
3static Function util.deprecate(Function fn,
String msg,
String code = "");
Parametri di chiamata:
- fn: Funzione, data la funzione da incapsulare
- msg: Stringa, dato messaggio di avviso
- code: Stringa, dato il numero di avviso
Risultato di ritorno:
- Function, Se il risultato dell'incapsulamento
isEmpty
Controlla se la variabile data non contiene alcun valore (nessun attributo enumerabile)
1static Boolean util.isEmpty(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è vuoto
isArray
Controlla se la variabile data è un array
1static Boolean util.isArray(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Restituisce True se è un array
isBoolean
Controlla se la variabile data è booleana
1static Boolean util.isBoolean(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è booleano
isNull
Controlla se la variabile data è Null
1static Boolean util.isNull(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è Null
isNullOrUndefined
Controlla se la variabile data è Null o Undefined
1static Boolean util.isNullOrUndefined(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è Null o Undefined
isNumber
Controlla se la variabile data è un numero
1static Boolean util.isNumber(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un numero
isBigInt
Controlla se la variabile data è BigInt
1static Boolean util.isBigInt(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un numero
isString
Controlla se la variabile data è una stringa
1static Boolean util.isString(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Restituisce True se è una stringa
isUndefined
Controlla se la variabile data è Indefinita
1static Boolean util.isUndefined(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è Indefinito
isRegExp
Controlla se la variabile data è un oggetto regolare
1static Boolean util.isRegExp(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un oggetto normale
isObject
Controlla se la variabile data è un oggetto
1static Boolean util.isObject(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un oggetto
isDate
Controlla se la variabile data è un oggetto data
1static Boolean util.isDate(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un oggetto data
isNativeError
Controlla se la variabile data è l'oggetto sbagliato
1static Boolean util.isNativeError(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un oggetto di errore
isPrimitive
Controlla se la variabile data è di tipo primitivo
1static Boolean util.isPrimitive(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un tipo primitivo
isSymbol
Controlla se la variabile data è di tipo Simbolo
1static Boolean util.isSymbol(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Se è di tipo Simbolo, restituisce True
isDataView
Controlla se la variabile data è di tipo DataView
1static Boolean util.isDataView(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è di tipo DataView
isExternal
Controlla se la variabile data è di tipo Esterno
1static Boolean util.isExternal(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Se è un tipo Esterno, restituisce True
isMap
Controlla se la variabile data è di tipo Map
1static Boolean util.isMap(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è un tipo di mappa
isMapIterator
Controlla se la variabile data è di tipo MapIterator
1static Boolean util.isMapIterator(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è di tipo MapIterator
isPromise
Controlla se la variabile data è di tipo Promise
1static Boolean util.isPromise(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è di tipo Promessa
isAsyncFunction
Controlla se la variabile data è di tipo AsyncFunction
1static Boolean util.isAsyncFunction(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Restituisce True se è di tipo AsyncFunction
isSet
Controlla se la variabile data è di tipo Set
1static Boolean util.isSet(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Se è un tipo Set, restituisce True
isSetIterator
Controlla se la variabile data è di tipo SetIterator
1static Boolean util.isSetIterator(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, restituisce True se è di tipo SetIterator
isTypedArray
Controlla se la variabile data è di tipo TypedArray
1static Boolean util.isTypedArray(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Se è un tipo TypedArray, restituisce True
isUint8Array
Controlla se la variabile data è di tipo Uint8Array
1static Boolean util.isUint8Array(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Restituisce True se è di tipo Uint8Array
isFunction
Controlla se la variabile data è un oggetto funzione
1static Boolean util.isFunction(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Restituisce True se è un oggetto funzione
isBuffer
Controlla se la variabile data è una funzione Buffer Oggetto
1static Boolean util.isBuffer(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da testare
Risultato di ritorno:
- Boolean, Se è una funzione Buffer L'oggetto restituisce True
isDeepEqual
La profondità del valore del test è uguale al valore atteso
1
2static Boolean util.isDeepEqual(Value actual,
Value expected);
Parametri di chiamata:
- actual: Valore, il valore da testare
- expected: Valore, valore atteso
Risultato di ritorno:
- Boolean, restituisce True se le profondità sono uguali
has
Interroga se l'oggetto specificato contiene la chiave data
1
2static Boolean util.has(Value v,
String key);
Parametri di chiamata:
- v: Valore, dato l'oggetto da interrogare
- key: String, specifica la chiave da interrogare
Risultato di ritorno:
- Boolean, Restituisce un array di tutte le chiavi dell'oggetto
keys
Interroga tutti gli array di chiavi dell'oggetto specificato
1static Array util.keys(Value v);
Parametri di chiamata:
- v: Valore, dato l'oggetto da interrogare
Risultato di ritorno:
- Array, Restituisce un array di tutte le chiavi dell'oggetto
values
Interroga l'array di tutti i valori dell'oggetto specificato
1static Array util.values(Value v);
Parametri di chiamata:
- v: Valore, dato l'oggetto da interrogare
Risultato di ritorno:
- Array, Restituisce un array di tutti i valori dell'oggetto
clone
Clona la variabile data, se è un oggetto o un array, copia il contenuto nel nuovo oggetto
1static Value util.clone(Value v);
Parametri di chiamata:
- v: Valore, data la variabile da clonare
Risultato di ritorno:
- Value, Restituisci il risultato clonato
deepFreeze
Congelare un oggetto, l'oggetto congelato e i suoi oggetti contenuti non potranno essere modificati
1static util.deepFreeze(Value v);
Parametri di chiamata:
- v: Valore, specifica l'oggetto da congelare
extend
Estendi il valore della chiave di uno o più oggetti all'oggetto specificato
1
2static Value util.extend(Value v,
...objs);
Parametri di chiamata:
- v: Valore, specificare l'oggetto da espandere
- objs: ..., specifica uno o più oggetti per l'espansione
Risultato di ritorno:
- Value, Restituisce il risultato espanso
_extend
Estendi il valore della chiave di uno o più oggetti all'oggetto specificato, che è un alias di extend
1
2static Value util._extend(Value v,
...objs);
Parametri di chiamata:
- v: Valore, specificare l'oggetto da espandere
- objs: ..., specifica uno o più oggetti per l'espansione
Risultato di ritorno:
- Value, Restituisce il risultato espanso
pick
Ritorna aobjectCopia, filtra solo il valore dell'attributo della chiave specificata
1
2static Object util.pick(Value v,
...objs);
Parametri di chiamata:
- v: Valore, specificare l'oggetto da filtrare
- objs: ..., specificare uno o più tasti per la selezione
Risultato di ritorno:
- Object, Restituisci il risultato filtrato
omit
Ritorna aobjectCopia, escludi solo il valore dell'attributo della chiave specificata
1
2static Object util.omit(Value v,
...keys);
Parametri di chiamata:
- v: Valore, specificare l'oggetto da filtrare
- keys: ..., specifica una o più chiavi da escludere
Risultato di ritorno:
- Object, Restituisce risultati esclusi
first
Ottieni il primo elemento dell'array
1static Value util.first(Value v);
Parametri di chiamata:
- v: Valore, dato l'array da ottenere
Risultato di ritorno:
- Value, Restituisce l'elemento recuperato
Ottieni i primi elementi multipli dell'array
1
2static Value util.first(Value v,
Integer n);
Parametri di chiamata:
- v: Valore, dato l'array da ottenere
- n: Intero, specificare il numero di elementi da ottenere
Risultato di ritorno:
- Value, Restituisce l'array di elementi ottenuto
last
Ottieni il primo elemento dell'array
1static Value util.last(Value v);
Parametri di chiamata:
- v: Valore, dato l'array da ottenere
Risultato di ritorno:
- Value, Restituisce l'elemento recuperato
Ottieni più elementi alla fine dell'array
1
2static Value util.last(Value v,
Integer n);
Parametri di chiamata:
- v: Valore, dato l'array da ottenere
- n: Intero, specificare il numero di elementi da ottenere
Risultato di ritorno:
- Value, Restituisce l'array di elementi ottenuto
unique
Ottieni una copia degli elementi dell'array dopo la deduplicazione
1
2static Array util.unique(Value v,
Boolean sorted = false);
Parametri di chiamata:
- v: Valore, dato l'array da deduplicare
- sorted: Boolean, specifica se l'array è ordinato o meno, se l'array è specificato per essere ordinato, verrà utilizzato un algoritmo veloce
Risultato di ritorno:
- Array, Restituisce l'array dopo la deduplicazione
union
Combina i valori di uno o più array in un array con valori univoci
1static Array util.union(...arrs);
Parametri di chiamata:
- arrs: ..., specifica uno o più array da unire
Risultato di ritorno:
- Array, Restituisci il risultato unito
intersection
Restituisce l'intersezione di un array che contiene arr ed esclude uno o più elementi dell'array
1static Array util.intersection(...arrs);
Parametri di chiamata:
- arrs: ..., specifica uno o più array per calcolare l'intersezione
Risultato di ritorno:
- Array, Restituisce il risultato del calcolo dell'intersezione
flatten
Converti un array con più livelli di nidificazione (l'annidamento può essere un numero qualsiasi di livelli) in un array con un solo livello. Se si passa il parametro superficiale, l'array ridurrà solo l'annidamento unidimensionale.
1
2static Array util.flatten(Value arr,
Boolean shallow = false);
Parametri di chiamata:
- arr: Valore, specifica l'array da convertire
- shallow: Boolean, specifica se ridurre solo l'annidamento unidimensionale, l'impostazione predefinita è false
Risultato di ritorno:
- Array, Restituisce il risultato della conversione
without
Restituisce un array contenente uno o più elementi esclusi dall'array arr
1
2static Array util.without(Value arr,
...els);
Parametri di chiamata:
- arr: Valore, specifica l'array da escludere
- els: ..., specifica uno o più elementi da escludere
Risultato di ritorno:
- Array, Restituisce risultati esclusi
difference
Restituisce un array che contiene l'array arr ed esclude l'elemento senza array
1
2static Array util.difference(Array list,
...arrs);
Parametri di chiamata:
- list: Array, specifica l'array da escludere
- arrs: ..., specifica uno o più array da escludere
Risultato di ritorno:
- Array, Restituisce risultati esclusi
each
Attraversa tutti gli elementi nell'elenco e genera ogni elemento in ordine con attraversamento. Se viene passato il parametro di contesto, l'iteratore è associato all'oggetto di contesto. Ogni chiamata all'iteratore passerà tre parametri: (elemento, indice, elenco)
1
2
3static Value util.each(Value list,
Function iterator,
Value context = undefined);
Parametri di chiamata:
- list: Valore, specificare l'elenco o l'oggetto da attraversare
- iterator: Funzione, specifica la funzione di callback utilizzata per l'attraversamento
- context: Valore, specifica l'oggetto di contesto associato quando si chiama l'iteratore
Risultato di ritorno:
- Value, Restituisci l'elenco stesso
map
Attraverso la funzione di trasformazione (iteratore), ogni valore nell'elenco viene mappato su un nuovo array. Se viene passato il parametro di contesto, l'iteratore è associato all'oggetto di contesto. Ogni chiamata all'iteratore passerà tre parametri: (elemento, indice, elenco)
1
2
3static Array util.map(Value list,
Function iterator,
Value context = undefined);
Parametri di chiamata:
- list: Valore, specificare la lista o l'oggetto da trasformare
- iterator: Funzione, specifica la funzione di callback utilizzata per la trasformazione
- context: Valore, specifica l'oggetto di contesto associato quando si chiama l'iteratore
Risultato di ritorno:
- Array, Restituisce il risultato della trasformazione
reduce
Riduci gli elementi nell'elenco a un singolo valore. Se viene passato il parametro di contesto, l'iteratore è associato all'oggetto di contesto. Ogni chiamata all'iteratore passerà tre parametri: (memo, elemento, indice, elenco)
1
2
3
4static Value util.reduce(Value list,
Function iterator,
Value memo,
Value context = undefined);
Parametri di chiamata:
- list: Valore, specificare l'elenco o l'oggetto da risolvere
- iterator: Funzione, specifica la funzione di callback utilizzata per la risoluzione
- memo: Valore, specificare il valore iniziale della risoluzione
- context: Valore, specifica l'oggetto di contesto associato quando si chiama l'iteratore
Risultato di ritorno:
- Value, Restituisce il risultato della risoluzione
parseArgs
Analizza la stringa della riga di comando e restituisce l'elenco dei parametri
1static NArray util.parseArgs(String command);
Parametri di chiamata:
- command: String, specifica la stringa della riga di comando da analizzare
Risultato di ritorno:
- NArray, Restituisce l'elenco dei parametri analizzati
compile
Compila lo script come codice binario
1
2
3static Buffer util.compile(String srcname,
String script,
Integer mode = 0);
Parametri di chiamata:
- srcname: String, specifica il nome dello script da aggiungere
- script: String, specifica il codice dello script da compilare
- mode: Intero, modalità di compilazione, 0: modulo, 1: script, 2: lavoratore, il valore predefinito è 0
Risultato di ritorno:
- Buffer, Restituisce il codice binario compilato
util.compileLo script può essere compilato in un blocco dati di esecuzione interno v8 (codice di esecuzione non macchina). Dopo che il codice compilato è stato salvato come *.jsc, può essere caricato ed eseguito direttamente da run e require.
Dopo la compilazione, il codice di destinazione non sarà in grado di ottenere il codice sorgente al contrario e il programma che dipende da Function.toString non verrà eseguito normalmente.
sync
Avvolgere la funzione di callback o asincrona come una chiamata sincrona
1
2static Function util.sync(Function func,
Boolean async_func = false);
Parametri di chiamata:
- func: Funzione, data la funzione che deve essere racchiusa
- async_func: booleano, specifica di elaborare func come funzione asincrona, se è falso, verrà giudicato automaticamente
Risultato di ritorno:
- Function, Restituisce la funzione che viene eseguita in modo sincrono
util.sync Considera la funzione di callback o la funzione asincrona come una funzione di sincronizzazione per una chiamata facile.
L'esempio di callback è il seguente:
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'esempio asincrono è il seguente:
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));
Per le funzioni che restituiscono promesse non contrassegnate come asincrone, puoi specificare manualmente la modalità di sincronizzazione:
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
Avvolgere la funzione di callback come chiamata asincrona
1static Function util.promisify(Function func);
Parametri di chiamata:
- func: Funzione, data la funzione che deve essere racchiusa
Risultato di ritorno:
- Function, restituisce la funzione asincrona
util.promisify Considera la funzione di callback come una funzione asincrona per una facile chiamata.
L'esempio di callback è il seguente:
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
Avvolgere la funzione asincrona come una callback
1static Function util.callbackify(Function func);
Parametri di chiamata:
- func: Funzione, data la funzione che deve essere racchiusa
Risultato di ritorno:
- Function, Restituisci la funzione di callback
util.callbackify Considera la funzione asincrona come una funzione di callback per una facile chiamata.
L'esempio asincrono è il seguente:
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
Interroga le informazioni sulla versione corrente del motore e del componente
1static Object util.buildInfo();
Risultato di ritorno:
- Object, Restituisce l'oggetto della versione 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"
}
}