Ez az általános célú modul számos hasznos segédfunkciót tartalmaz, amelyek megspórolhatják az extra kód írásának fáradságát.
A segédprogram egy sor segédprogramot biztosít, amelyek segítségével hibakeresést, vizsgálatot és formázást végezhet a Node.js alkalmazásokban.
Merüljön el a segédmodul különböző funkcióiban, és fedezzen fel néhány példát, amelyek segítenek ezeknek az eszközöknek a kihasználásában.
Naplózás nagyobb kényelemmel
A naplózás a szoftveralkalmazáson belül előforduló fontos információk vagy események, például változó értékek, hibaüzenetek és végrehajtási folyamat rögzítésére vonatkozik. A naplózás többféle célt szolgál, beleértve a hibakeresést, a megfigyelést és az auditálást.
A Node.js segédprogram kényelmes naplózási mechanizmust biztosít a util.debuglog módszer. Lehetővé teszi hibakeresési naplózási funkciók létrehozását névtérrel, és engedélyezheti vagy letilthatja azokat a NODE_DEBUG környezeti változó. Íme egy példa:
// index.js
const util = igényelnek("hasznos");const debug = util.debuglog("myapp"); // a hibakeresési naplózó inicializálása
debug("Ez egy hibakeresési üzenet"); // MYAPP 39668: Ez egy hibakeresési üzenet
Ez a példa bemutatja, hogyan állíthat be egy egyszerű hibakeresési naplózót a „myapp” névtérben, és naplózhat egy üzenetet és annak folyamatazonosítóját a konzolra.
A hibakeresési naplók engedélyezéséhez állítsa be a NODE_DEBUG környezeti változó a névtérhez a szkript futtatásakor:
NODE_DEBUG=myapp csomópont index.js
Ha több hibakeresési névteret szeretne engedélyezni, vesszővel válassza el a névtereket:
NODE_DEBUG=myapp, myapp2,myapp3 node index.js
Ha nem ad meg névteret a NODE_DEBUG környezeti változó, a debuglog hívások figyelmen kívül hagyják ezt a névteret.
A util.debuglog módszer hasznos funkciókat biztosít, de ha az alkalmazás összetettebb naplózást igényel, használhatja a másik robusztus egyikét csomagok naplózása a Node.js ökoszisztémában.
Ígéretes funkciók a rugalmasság érdekében
A JavaScript ígéretei módot adnak az aszinkron kódok strukturáltabb és kezelhetőbb kezelésére Ez lehetővé teszi a műveletek láncolását, a hibák és a sikeresemények elkülönített kezelését, valamint a visszahívások elkerülését pokol.
Bár nem minden beépített funkció támogatja az ígéreteket. A hagyományos visszahívásokat használó függvényeket azonban „beígérheti”, hogy támogassa az ígéreteket a util modullal. util.promisify módszer.
Ez a módszer olyan függvényt vesz fel, amely a hagyományos visszahívási rendszert használja, és egy ígéreteket használó függvényt ad vissza.
Például:
const util = igényelnek("hasznos");
// Visszahívási verzió
funkcióvisszahívási funkció(arg1, arg2, visszahívás) {
// Aszinkron működés
// Visszahívás meghívása hibával (ha van) és eredménnyel
}// Promisify callbackFunction
const callbackFunctionPromise = util.promisify (callbackFunction);
// Megígért verzió
callbackFunctionPromise (arg1, arg2)
.akkor((eredmény) => {
// Folyamat eredménye
})
.fogás((hiba) => {
// Kezelési hiba
});
A fenti példában a util.promisify metódus átalakította a függvény visszahívási verzióját ígéreteket használó verzióvá.
Ez az átalakítás lehetővé teszi a lánc használatát akkor és fogás blokkok, használat próba-elkapni, és jobban kezelheti az aszinkron kódját.
Karakterláncok formázása ismerős módszerrel
A Node.js util nevű formázási funkciót biztosít util.formátum amely lehetővé teszi formázott karakterláncok létrehozását. Ez a módszer hasonlóan működik a printf függvény bashban és más programozási nyelvek, mint a C és a C++.
A util.format() metódus olyan formátum karakterláncot vesz fel, amely nulla vagy több formátumspecifikációt tartalmazhat, mint pl %s (húrok), %d (számok), argumentumként. Ezenkívül tetszőleges számú értékre van szükség, amelyek lecserélik a megfelelő specifikációkat.
Például:
const util = igényelnek("hasznos");
const név = "Bonnie";
const kor = 30;const formattedString = util.format(
"A nevem %s, és %d éves vagyok.",
név,
kor
);
konzol.log (formázottString); // A nevem Bonnie, és 30 éves vagyok.
Ez a példa formátumkarakterláncot használ két helyőrzővel: %s és %d. A %s helyőrző a karakterlánc helyettesítésére szolgál, míg %d numerikus helyettesítésre szolgál. Az util.format hívása a megfelelő értékeket adja át –név és kor– minden helyőrzőhöz.
Ha egy specifikátornak nincs megfelelő argumentuma, a util.formátum metódus nem cseréli le, és visszaadja a karakterláncot anélkül, hogy megváltoztatná:
const util = igényelnek("hasznos");
const formattedString = util.format("A nevem %s");
konzol.log (formázottString); // A nevem %s
Ez a példa a formátumot egyetlen argumentummal hívja meg, így a metódus az eredeti karakterláncot adja vissza.
A Util Modulnak még számos felhasználási módja van
Ezeken a felhasználásokon kívül a Node.js segédprogram egyéb segédfunkciókat is kínál. Ilyen például az objektumok és értékek vizsgálata, valamint az elavult eszközök elavulása.
A segédmodul által biztosított funkciók kihasználásával javíthatja a kód olvashatóságát és karbantarthatóságát, valamint az általános munkafolyamatot.