Cum să citiți intrările consecutive cu modulul Node.js Readline?

Cum Sa Cititi Intrarile Consecutive Cu Modulul Node Js Readline



Citeste linia Modulul Node.js este ideal pentru a fi utilizat în scenarii în care mai mult de o intrare consecutivă trebuie preluată de la utilizatorul final. Acest modul înglobează ieșirea și intrarea standard, ceea ce ajută la citirea fluxului de intrare linie cu linie fără a omite orice date primite. Odată cu sosirea „ Citeste linia ”, procedura de preluare a datelor în timp real devine mult mai ușoară și mai rapidă.

Acest articol explică procedura de citire a intrărilor consecutive cu modulul nodejs readline.

Cum să citiți intrările consecutive cu modulul Node.js Readline?

Intrările consecutive sunt cele care preiau și stochează răspunsurile pentru mai multe întrebări în același timp într-o manieră secvențială. Aceste interogări consecutive sunt solicitate de cele mai multe ori în timpul înscrierii la unele cursuri sau în momentul verificării. Mai jos sunt prezentate câteva exemple pentru implementarea citirii intrărilor consecutive folosind modulul readline Node.js.







Exemplul 1: Citirea intrărilor consecutive folosind modulul Readline și matricele

În acest exemplu, intrările consecutive sunt luate și citite folosind „ Citeste linia ” modulul. Intrările sunt stocate în matrice de unde sunt afișate pe consolă:



const Citeste linia = cere ( 'Citeste linia' ) ;

const readlineInterfață = Citeste linia. createInterfață ( {

intrare : proces. stdin ,

ieșire : proces. stdout

} )

const req0 = 'Mai! Îți știu porecla? ;

const cerere 1 = 'Care e pasiunea ta' ;

const cerere 2 = „Ce îți place să asculți” ;

const cerere 3 = 'Mai! Știu felul tău de mâncare preferat? ;

const solicitarea4 = 'Unde locuiţi?' ;

const solicitarea5 = 'Care este culoarea ta preferata' ;

const cerere6 = 'Cine este cel mai bun prieten al tau' ;

const reqArr = [ req0, req1, req2, req3, req4, req5, req6 ] ;

lasă res = '' ;

const reqData = X => {

dacă ( X < reqArr. lungime ) {

readlineInterfață. întrebare ( reqArr [ X ] , ( reqResponse ) => {

res += ' \n ' + reqResponse ;

reqData ( X + 1 ) ;

} ) ;

} altfel {

consolă. Buturuga ( `Multumesc pentru împărtășind cu mine ! $ { res } ` ) ;

readlineInterfață. închide ( ) ;

}

} ;

reqData ( 0 ) ;

Descrierea codului utilizat în fragmentul de cod de mai sus este prezentată mai jos:



  • Începeți prin a importa „ Citeste linia ” și stocați obiectul său într-o variabilă numită „ Citeste linia ”.
  • Apoi, creați o interfață numită „ readlineInterfață ' pentru ' Citeste linia ” obiect care include procesul standard de intrare și ieșire folosind „ createInterface() ” metoda. De asemenea, asociază fiecare cerere și răspuns cu un singur flux de intrare citibil și de ieșire care poate fi scris folosind „ proces ” proprietate.
  • Apoi, creați șapte „ const ” tastați variabile pentru a stoca unele solicitări sau întrebări care trebuie adresate consecutiv. Stocați aceste constante într-o singură matrice numită „ reqArr ”.
  • Creați o nouă variabilă goală „ res ”, definiți o funcție săgeată numită „ reqData ” și treceți singurul parametru „ X ”.
  • În cadrul acestei funcții, utilizați „ dacă ” instrucțiune care verifică dacă valoarea parametrului furnizat este mai mică decât lungimea lui ” reqArr ' sau nu.
  • În cazul adevăratului, „ întrebare() ” este aplicată interfeței și afișează secvențial fiecare cerere din matrice peste ieșire. Apoi transmite valorile furnizate corespunzătoare ca argument.
  • Aceste argumente sunt stocate în tabloul deja creat „ res ”.
  • Odată ce toate cererile sunt afișate succesiv pe consolă, atunci condiția „ dacă ” declarația devine falsă și în „ altfel partea „, partea „ res ” matricea este afișată pe consolă.
  • În cele din urmă, interfața readline se închide și prin invocarea „ închide() ” metoda. De asemenea, invocați „ reqData() ” și transmiteți o valoare inițială de „ 0 ” pentru a începe întrebarea de sus sau de la prima întrebare disponibilă în matrice.

Acum, executați acest fișier care conține introducând „ nodul „cheie cheie din spatele „ nume de fișier ” pe terminal:





scrierea nodului

Ieșirea arată că programul a citit intrările consecutive și le-a returnat pe toate simultan:

Exemplul 2: Citirea intrărilor consecutive folosind modulul Readline și funcția recursive

În metodă, abordarea recursivă este utilizată cu „ Citeste linia ” Modulul Node.js pentru a citi intrările consecutive de la utilizator pe fluxul de intrare:



const citit = cere ( 'Citeste linia' ) ;
const readlineInterfață = citit. createInterfață ( {
intrare : proces. stdin ,
ieșire : proces. stdout
} )
a fost reqArr = [ ]
funcția reqData ( X ) {
dacă ( X > 3 )
{
var medie = 0
pentru ( j în reqArr )
{
in medie += Număr ( reqArr [ j ] )
}
consolă. Buturuga ( in medie / 3 ) ;
}
altfel
{
readlineInterfață. întrebare ( 'Introduceți' + X + 'numar din 3:' ,    funcția ( reqResponse ) {
reqArr. Apăsaţi ( reqResponse )
reqData ( X + 1 )
} )
}
}

reqData ( 1 ) ;

Explicația pentru codul de mai sus este descrisă mai jos sub formă de puncte:

  • Mai întâi, importați „ Citeste linia ” într-un nou creat ” scrie.js ” și stocați obiectul metodei într-un „ citit ' variabil. Creați o interfață care stochează „ Citeste linia ” care este creată prin intermediul „ createInterface() ” metoda.
  • Acum, creați o matrice goală numită „ reqArr ” și definiți „ reqData() ” care acceptă și un singur parametru numit “ X ”.
  • Funcția verifică mai întâi dacă valoarea furnizată este mai mare decât „ 3 ' sau nu. În cazul adevăratului, valorile preluate care vin în „ X „variabila este stocată într-o matrice și adăugată la variabila unică numită „ in medie ”.
  • După aceea, „ in medie „variabila este împărțită la „ 3 ” pentru a găsi media, deoarece lungimea numărului maxim permis este “ 3 ” iar rezultatul este afișat pe consolă.
  • În cealaltă parte, „ întrebare() ” metoda este atașată cu interfața ” readlineInerface ”. Această metodă afișează mesajul pe consolă și definește o funcție anonimă.
  • Funcția acceptă datele introduse de utilizator și adaugă acele date în matrice „ reqArr ”. De asemenea, actualizează valoarea „ X ” de fiecare dată și trece valoarea actualizată la „ reqData() ”funcție. Acest lucru se va asigura că utilizatorul introduce doar valori mai mici de trei, începând de la „ 0 ”. În cele din urmă, invocați „ reqData() ” pentru a începe procesul de execuție.

Acum, executați acest lucru care conține „ scrie.js ” prin introducerea fișierului „ nodul „cheie cheie din spatele „ nume de fișier ” pe terminal:

scrierea nodului

Ieșirea confirmă faptul că intrările consecutive sunt citite și media lor este afișată pe consolă utilizând combinația de abordare recursivă și modul readline:

Acest ghid explică procedura de citire a intrărilor consecutive cu modulul readline Node.js.

Concluzie

Pentru a citi intrările consecutive cu modulul Node.js readline, mai întâi importați acest modul într-un fișier de lucru și creați o interfață folosind „ createInterface() ” metoda. Această interfață invocă „ întrebare() ” metoda. Trimite cereri utilizatorului consecutiv și trece răspunsurile corespunzătoare fiecărei cereri către funcția de apel invers pentru a aplica unele operații conform cerințelor. Ați învățat procesul de citire a intrărilor consecutive folosind modulul readline.