Овај текст објашњава процедуру за читање узастопних улаза са нодејс реадлине модулом.
Како читати узастопне уносе са Ноде.јс Реадлине модулом?
Узастопни улази су они који узимају и чувају одговоре за више питања у исто време на секвенцијални начин. Ови узастопни упити се углавном постављају приликом придруживања неким курсевима или у време верификације. Неколико примера је наведено у наставку за имплементацију читања узастопних улаза користећи Ноде.јс реадлине модул.
Пример 1: Читање узастопних улаза помоћу Реадлине модула и низова
У овом примеру, узастопни улази се узимају и читају помоћу „ реадлине ” модул. Уноси се чувају у низу одакле се приказују на конзоли:
конст реадлине = захтевају ( 'реадлине' ) ;
конст реадлинеИнтерфаце = реадлине. цреатеИнтерфаце ( {
улазни : процес. стдин ,
излаз : процес. стдоут
} )
конст рек0 = 'Може! Знам твој надимак?' ;
конст рек1 = 'Шта је ваш хоби' ;
конст рек2 = 'Шта волиш да слушаш' ;
конст рек3 = 'Може! Знам твоје омиљено јело?' ;
конст рек4 = 'Где ти живиш?' ;
конст рек5 = 'Која ти је омиљена боја' ;
конст рек6 = 'Ко је твој најбољи пријатељ' ;
конст рекАрр = [ рек0, рек1, рек2, рек3, рек4, рек5, рек6 ] ;
нека рес = '' ;
конст рекДата = Икс => {
ако ( Икс < рекАрр. дужина ) {
реадлинеИнтерфаце. питање ( рекАрр [ Икс ] , ( рекРеспонсе ) => {
рес += ' \н ' + рекРеспонсе ;
рекДата ( Икс + 1 ) ;
} ) ;
} друго {
конзола. Пријава ( `Хвала за дели са мном ! $ { рес } ` ) ;
реадлинеИнтерфаце. Близу ( ) ;
}
} ;
рекДата ( 0 ) ;
Опис кода који се користи у горњем исечку кода је наведен у наставку:
- Започните увозом „ реадлине ” модул и чува његов објекат у променљивој под називом “ реадлине ”.
- Затим креирајте интерфејс под називом „ реадлинеИнтерфаце ' за ' реадлине ” објекат који обавија стандардни улазни и излазни процес користећи „ цреатеИнтерфаце() ” метод. Такође повезује сваки захтев и одговор са једним улазним читљивим и излазним стримом за писање користећи „ процес ' имовина.
- Затим креирајте седам „ конст ” укуцајте променљиве за чување неких захтева или питања која треба постављати узастопно. Чувајте ове константе у једном низу под називом „ рекАрр ”.
- Направите нову празну променљиву “ рес “, дефинишете функцију стрелице под називом „ рекДата ” и проследите један параметар од „ Икс ”.
- Унутар ове функције користите „ ако ” изјава која проверава да ли је вредност датог параметра мања од дужине „ рекАрр ' или не.
- У случају истинитог, „ питање() ” метода се примењује на интерфејс и приказује сваки захтев из низа преко излаза секвенцијално. Затим прослеђује њихове одговарајуће дате вредности као аргумент.
- Ови аргументи се чувају у већ креираном низу „ рес ”.
- Када се сви захтеви узастопно прикажу преко конзоле онда је услов „ ако ” изјава постаје лажна и у „ друго “ део, “ рес ” низ се приказује преко конзоле.
- Коначно, интерфејс реадлине се такође затвара позивањем „ Близу() ” метод. Такође, позовите „ рекДата() ” функција и прослеђује почетну вредност од “ 0 ” да бисте започели питање одозго или од првог питања доступног у низу.
Сада извршите ову датотеку која садржи уносом „ чвор ” кључна реч иза „ назив документа ” на терминалу:
чвор писати
Излаз показује да је програм прочитао узастопне улазе и вратио их све одједном:
Пример 2: Читање узастопних улаза коришћењем модула Реадлине и рекурзивне функције
У методи се користи рекурзивни приступ са „ реадлине ” Ноде.јс модул за читање узастопних уноса од корисника у улазном току:
конст читати = захтевају ( 'реадлине' ) ;
конст реадлинеИнтерфаце = читати. цреатеИнтерфаце ( {
улазни : процес. стдин ,
излаз : процес. стдоут
} )
вас рекАрр = [ ]
функција рекДата ( Икс ) {
ако ( Икс > 3 )
{
вар просечно = 0
за ( ј у рекАрр )
{
просек += Број ( рекАрр [ ј ] )
}
конзола. Пријава ( просек / 3 ) ;
}
друго
{
реадлинеИнтерфаце. питање ( 'Унесите ' + Икс + 'број од 3:' , функција ( рекРеспонсе ) {
рекАрр. гурати ( рекРеспонсе )
рекДата ( Икс + 1 )
} )
}
}
рекДата ( 1 ) ;
Објашњење за горњи код је описано у наставку у облику тачака:
- Прво увезите „ реадлине ” у новоствореном “ врите.јс ” датотеку и сачувајте објекат методе у „ читати ' променљива. Направите интерфејс који чува „ реадлине ” интерфејс који се креира преко „ цреатеИнтерфаце() ” метод.
- Сада креирајте празан низ под називом „ рекАрр ” и дефинише „ рекДата() ” функција која такође прихвата један параметар под називом “ Икс ”.
- Функција прво проверава да ли је дата вредност већа од „ 3 ' или не. У случају тачног, преузете вредности које долазе у „ Икс ” променљива се чува у низу и додаје у једну променљиву под називом “ просек ”.
- Након тога, „ просек ” променљива је подељена са “ 3 ” да бисте пронашли просек јер је дужина максимално дозвољеног броја „ 3 ” и резултат се приказује на конзоли.
- У другом делу, „ питање() ” метод је повезан са интерфејсом “ реадлинеИнерфаце ”. Овај метод приказује поруку преко конзоле и дефинише анонимну функцију.
- Функција прихвата податке за унос корисника и додаје те податке у низ „ рекАрр ”. Такође ажурира вредност „ Икс ” сваки пут и преноси ажурирану вредност у „ рекДата() ” функција. Ово ће осигурати да корисник унесе само вредности мање од три почевши од „ 0 ”. На крају, позовите „ рекДата() ” функција за покретање процеса извршења.
Сада извршите ово које садржи „ врите.јс ” датотеку уношењем „ чвор ” кључна реч иза „ назив документа ” на терминалу:
чвор писатиИзлаз потврђује да се узастопни улази читају и да се њихов просек приказује преко конзоле користећи комбинацију рекурзивног приступа и модула реадлине:
Овај водич објашњава процедуру за читање узастопних уноса помоћу модула Реадлине Ноде.јс.
Закључак
Да бисте прочитали узастопне уносе са Ноде.јс реадлине модулом, прво увезите овај модул у радну датотеку и креирајте интерфејс користећи „ цреатеИнтерфаце() ” метод. Овај интерфејс позива „ питање() ” метод. Он узастопно шаље захтеве кориснику и прослеђује одговарајуће одговоре сваког захтева функцији повратног позива да примени неке операције у складу са захтевима. Научили сте процес читања узастопних уноса помоћу модула реадлине.