Šiame bendrosios paskirties modulyje yra daug naudingų funkcijų, kurios gali sutaupyti pastangų rašant papildomą kodą.
Naudojimo modulyje pateikiamas paslaugų rinkinys, kurį galite naudoti norėdami derinti, tikrinti ir formatuoti duomenis Node.js programose.
Pasinerkite į įvairias util modulio funkcijas ir ištirkite keletą pavyzdžių, kurie padės jums panaudoti šiuos įrankius.
Patogesnis registravimas
Registravimas reiškia svarbios informacijos arba įvykių, pvz., kintamųjų reikšmių, klaidų pranešimų ir vykdymo srauto, vykstančių programinėje įrangoje, įrašymą. Registravimas skirtas įvairiems tikslams, įskaitant derinimą, stebėjimą ir auditą.
Node.js util modulis suteikia patogų registravimo mechanizmą naudojant util.debuglog metodas. Tai leidžia jums sukurti derinimo registravimo funkcijas su vardų erdve ir galite jas įjungti arba išjungti nustatydami NODE_DEBUG aplinkos kintamasis. Štai pavyzdys:
// index.js
konst util = reikalauti("naudojimas");konst debug = util.debuglog("mano programa"); // inicijuoti derinimo registratorių
debug ("Tai yra derinimo pranešimas"); // MYAPP 39668: Tai yra derinimo pranešimas
Šiame pavyzdyje parodyta, kaip galite nustatyti paprastą derinimo registratorių „myapp“ vardų srityje ir užregistruoti pranešimą bei jo proceso ID konsolėje.
Norėdami įjungti derinimo žurnalus, nustatykite NODE_DEBUG aplinkos kintamasis į vardų sritį, kai paleidžiate scenarijų:
NODE_DEBUG=mano programos mazgas index.js
Jei norite įjungti kelias derinimo vardų sritis, pridėkite kablelį, kad atskirtumėte vardų sritis:
NODE_DEBUG=myapp, myapp2,myapp3 mazgas index.js
Jei neįtrauksite vardų srities į NODE_DEBUG aplinkos kintamąjį, derinimo žurnalo iškvietimai nepaisys šios vardų erdvės.
The util.debuglog metodas suteikia naudingų funkcijų, bet jei jūsų programai reikia sudėtingesnio registravimo, galite naudoti vieną iš kitų patikimų registruojant paketus Node.js ekosistemoje.
Perspektyvios funkcijos, skirtos lankstumui
„JavaScript“ pažadai suteikia galimybę tvarkyti asinchroninį kodą labiau struktūrizuotu ir lengviau valdomu būdu tokiu būdu, leisdamas sujungti operacijas, tvarkyti klaidas ir sėkmės įvykius atskirai ir išvengti atgalinio skambučio pragaras.
Nors ne visos integruotos funkcijos palaiko pažadus. Tačiau galite „pažadėti“ funkcijas, kurios naudoja tradicinius atgalinius skambučius, kad jos galėtų palaikyti pažadus naudojant util modulį. util.pažadėti metodas.
Šis metodas naudoja funkciją, kuri naudoja tradicinę atgalinio skambinimo sistemą, ir grąžina funkciją, kuri naudoja pažadus.
Pavyzdžiui:
konst util = reikalauti("naudojimas");
// Atgalinio skambinimo versija
funkcijaatgalinio skambinimo funkcija(arg1, arg2, atgalinis skambutis) {
// Asinchroninis veikimas
// Iškviesti atgalinį skambutį su klaida (jei yra) ir rezultatu
}// Promisify callbackFunction
konst callbackFunctionPromise = util.promisify (callbackFunction);
// Pažadėta versija
callbackFunctionPromise (arg1, arg2)
.thena((rezultatas) => {
// Proceso rezultatas
})
.catch((klaida) => {
// Tvarkos klaida
});
Aukščiau pateiktame pavyzdyje util.pažadėti metodas konvertavo funkcijos atšaukimo versiją į versiją, kurioje naudojami pažadai.
Ši konversija leidžia naudoti grandinę tada ir sugauti blokai, naudojimas bandyti-pagautiir geriau valdyti asinchroninį kodą.
Stygų formatavimas pažįstamu metodu
Node.js util modulis suteikia formatavimo funkciją, vadinamą util.formatas kuri leidžia kurti suformatuotas eilutes. Šis metodas veikia panašiai kaip į printf funkcija bash ir kitos programavimo kalbos, tokios kaip C ir C++.
The util.format() metodas paima formato eilutę, kurioje gali būti nulis ar daugiau formato specifikacijų, pvz., %s (stygos), %d (skaičiai), kaip argumentą. Taip pat reikalingas savavališkas skaičius reikšmių, kurios pakeis atitinkamas jų specifikacijas.
Pavyzdžiui:
konst util = reikalauti("naudojimas");
konst vardas = "Bonnie";
konst amžius = 30;konst formattedString = util.format(
„Mano vardas yra %s, man %d metų.,
vardas,
amžiaus
);
konsolė.log (formattedString); // Mano vardas Bonė, man 30 metų.
Šiame pavyzdyje naudojama formato eilutė su dviem vietos rezervavimo ženklais: %s ir %d. The %s vietos rezervuaras skirtas eilučių pakeitimui, while %d yra skirtas skaitiniams pakeitimams. Iškvietimas į util.format perduoda atitinkamas reikšmes –vardas ir amžiaus– kiekvienai rezervuotai vietai.
Jei specifikatorius neturi atitinkamo argumento, util.formatas metodas jo nepakeis ir grąžins eilutę jos nekeisdamas:
konst util = reikalauti("naudojimas");
konst formattedString = util.format(„Mano vardas %s“);
konsolė.log (formattedString); // Mano vardas %s
Šis pavyzdys iškviečia formatą tik su vienu argumentu, todėl metodas grąžina pradinę eilutę.
Yra daug kitų naudingojo modulio naudojimo būdų
Be šių naudojimo būdų, Node.js util modulis siūlo ir kitų naudingų funkcijų. Pavyzdžiai apima objektų ir vertybių tikrinimą ir pasenusių įrankių panaikinimą.
Pasinaudodami util modulio teikiamomis funkcijomis galite pagerinti kodo ir visos darbo eigos skaitomumą ir priežiūrą.