Овај модул опште намене садржи многе корисне услужне функције које вам могу уштедети напор писања додатног кода.

Утил модул обезбеђује скуп услужних програма које можете да користите за отклањање грешака, проверу и форматирање података у Ноде.јс апликацијама.

Удубите се у различите функције утил модула и истражите неке примере који ће вам помоћи да искористите ове алате.

Логирање уз више погодности

Евидентирање се односи на бележење важних информација или догађаја, као што су вредности променљивих, поруке о грешци и ток извршења, који се дешавају унутар софтверске апликације. Евидентирање служи за вишеструке сврхе, укључујући отклањање грешака, праћење и ревизију.

Ноде.јс утил модул пружа згодан механизам евидентирања користећи утил.дебуглог методом. Омогућава вам да креирате функције евидентирања грешака са именским простором, а можете их омогућити или онемогућити постављањем НОДЕ_ДЕБУГ варијабла окружења. Ево примера:

// индек.јс
конст утил = захтевају("утил");

конст дебуг = утил.дебуглог("моја апликација"); // иницијализује дебуг логер

дебуг(„Ово је порука за отклањање грешака“); // МИАПП 39668: Ово је порука за отклањање грешака

Овај пример показује како можете подесити једноставан дневник за отклањање грешака у именском простору „миапп“ и евидентирати поруку и њен ИД процеса на конзоли.

Да бисте омогућили евиденцију отклањања грешака, подесите НОДЕ_ДЕБУГ променљива окружења у именском простору када покренете скрипту:

НОДЕ_ДЕБУГ=индек.јс чвора моје апликације

Ако желите да омогућите више именских простора за отклањање грешака, додајте зарез да бисте одвојили просторе имена:

НОДЕ_ДЕБУГ=миапп, миапп2,миапп3 ноде индек.јс

Ако не укључите простор имена у НОДЕ_ДЕБУГ променљива окружења, позиви дебуглог-у ће игнорисати тај именски простор.

Тхе утил.дебуглог метод пружа корисну функционалност, али ако ваша апликација захтева сложеније евидентирање, можете користити један од других робусних евидентирање пакета у екосистему Ноде.јс.

Обећавајуће функције за флексибилност

Обећања у ЈаваСцрипт-у пружају начин за руковање асинхроним кодом на структуриранији и управљивији начин тако што вам омогућава да уланчате операције, одвојено рукујете грешкама и догађајима успеха и избегавате повратни позив пакао.

Иако, не подржавају све уграђене функције обећања. Међутим, можете „обећати“ функције које користе традиционалне повратне позиве да бисте им омогућили да подрже обећања са утил модулом утил.промисифи методом.

Овај метод узима функцију која користи традиционални систем повратног позива и враћа функцију која користи обећања.

На пример:

конст утил = захтевају("утил");

// Верзија повратног позива
функцијацаллбацкФунцтион(арг1, арг2, повратни позив) {
// Асинхрони рад
// Позовите повратни позив са грешком (ако постоји) и резултатом
}

// Промисифи цаллбацкФунцтион
конст цаллбацкФунцтионПромисе = утил.промисифи (цаллбацкФунцтион);

// Обећана верзија
цаллбацкФунцтионПромисе (арг1, арг2)
.онда((резултат) => {
// Резултат процеса
})
.улов((грешка) => {
// Грешка руковања
});

У горњем примеру, утил.промисифи метод је конвертовао повратну верзију функције у верзију која користи обећања.

Ова конверзија вам омогућава да користите ланац онда и улов блокови, употреба покушај да ухватиш, и боље управљајте својим асинхроним кодом.

Форматирање стрингова познатим методом

Ноде.јс утил модул обезбеђује функцију форматирања тзв утил.формат који вам омогућава да креирате форматиране стрингове. Овај метод функционише слично као тхе принтф функција у басх-у и други програмски језици попут Ц и Ц++.

Тхе утил.формат() метода узима стринг формата који може да садржи нула или више спецификација формата, као што је (жице), (бројеви), као аргумент. Такође узима произвољан број вредности које ће заменити њихове одговарајуће спецификације.

На пример:

конст утил = захтевају("утил");

конст име = "Бони";
конст старост = 30;

конст форматтедСтринг = утил.формат(
„Зовем се %с, и имам %д година.“,
име,
старости
);

конзола.лог (форматтедСтринг); // Зовем се Бони и имам 30 година.

Овај пример користи стринг формата са два чувара места: и . Тхе чувар места је за замену стрингова, док је за нумеричку замену. Позив утил.формат преноси одговарајуће вредности—име и старости— за сваки чувар места.

Ако спецификација нема одговарајући аргумент, утил.формат метода га неће заменити, и вратиће стринг без промене:

конст утил = захтевају("утил");

конст форматтедСтринг = утил.формат("Моје име је %с");
конзола.лог (форматтедСтринг); // Моје име је %с

Овај пример позива формат са само једним аргументом, тако да метода враћа оригинални стринг.

Постоји још много начина коришћења модула Утил

Осим ових употреба, Ноде.јс утил модул нуди и друге услужне функције. Примери укључују проверу објеката и вредности и одбацивање застарелих алата.

Користећи функционалност коју пружа утил модул, можете побољшати читљивост и могућност одржавања вашег кода и укупног тока посла.