Hogyan lehet puffert másolni, összehasonlítani és összefűzni a Node.js-ben?

Hogyan Lehet Puffert Masolni Osszehasonlitani Es Osszefuzni A Node Js Ben



A puffer egy adott memóriában ideiglenesen tárolt bináris adatok gyűjteménye. Fő célja a tárolt bináris adatok kezelése és átvitele egyik helyről a másikra. A Node.js-ben a felhasználó a beépített „Buffer” modul segítségével érheti el az adott memóriát.

A puffer jobban hasonlít a JavaScript „tömbhöz”, de van egy különbség, vagyis a mérete nem módosítható, miután beállította. A modul közös jellemzői az írás, az olvasás, az összehasonlítás, a másolás, a konvertálás és még sok más. Az összes megadott művelet végrehajtható a beépített módszerekkel és tulajdonságaival.

Ez a blog rövid leírást ad a Node.js-ben található pufferek másolásával, összehasonlításával és összefűzésével kapcsolatban.







Kezdjük a „másolás” művelettel.



Hogyan másoljunk puffert a Node.js-ben?

A ' Buffer.copy() ” módszer lehetővé teszi a felhasználók számára, hogy az egyik pufferobjektumot a másikba másolják. Ez a módszer egy újonnan frissített puffert ad vissza. A módszer működése a következő szintaxistól függ:



buf. másolat ( targetBuffer [ , targetStart ] [ , forrásStart ] [ , forrásVége ] )

A fenti szintaxis szerint a „copy()” metódus a következő paramétereket adja meg:





  • targetBuffer : Megadja azt a pufferobjektumot, amelynek tartalmát egy másik pufferobjektumba kell másolni.
  • targetStart : Azt a helyet jelöli, ahol a másolás a művelet megkezdődik. Az alapértelmezett értéke „0”.
  • forrásStart : Azt a helyet jelöli, ahol a másolási művelet elindul. Az alapértelmezett értéke „0”.
  • forrásVége : Azt a végpontot jelöli, ahol a másolási művelet leáll. Alapértelmezett értéke a „puffer vége”.

A következő kódblokk a „copy()” metódus gyakorlati megvalósítását mutatja be:

volt buf1 = Puffer. tól től ( '123' ) ;
volt buf2 = Puffer. alloc ( 3 ) ;
buf1. másolat ( buf2 ) ;
konzol. log ( 'A puffer2 tartalma: ' + buf2. toString ( ) ) ;

A fenti kódsorokban:



  • A ' tól től() ” metódus létrehoz egy puffer objektumot a megadott egész számokkal.
  • A ' alloc() ” metódus egy lefoglalt méretű pufferobjektumot hoz létre.
  • A ' másolat() ” metódus átmásolja az első puffer már meglévő tartalmát a második pufferobjektumba.
  • A ' toString() ' metódus dekódolja a másolt tartalmat karakterlánc formátumba (ember által olvasható), majd megjeleníti a konzolban a ' console.log() ” módszerrel.

Kimenet
Hajtsa végre a megadott parancsot a „.js” fájl elindításához:

csomópont alkalmazás. js

Látható, hogy az egyik puffer tartalma át lett másolva a második pufferbe:

Hogyan hasonlítsunk össze egy puffert a Node.js-ben?

A Node.js pufferének összehasonlításához használja a beépített ' Buffer.compare() ” módszerrel. Ez a módszer összehasonlít két puffert, és egy numerikus értéket ad vissza standard kimenetként, amely megmutatja a meghatározott különbségeket. Az alábbiakban felsoroljuk ezeket a számértékeket a meghatározott különbségekkel együtt:

  • 0 : A pufferek egyenlőek.
  • 1 : Az 1. puffer nagyobb, mint a 2. puffer.
  • -1 : Az 1. puffer alacsonyabb, mint a 2. puffer.

Szintaxis

buf. összehasonlítani ( otherBuffer ) ;

A „compare()” metódus szintaxisa csak egy lényeges argumentumot támogat, amely a „ otherBuffer ”.

Gyakorlatilag használjuk a fent definiált szintaxist:

volt buf1 = Puffer. tól től ( 'Linux' ) ;
volt buf2 = Puffer. tól től ( 'Linux' ) ;
volt x = Puffer. összehasonlítani ( buf1 , buf2 ) ;
konzol. log ( x ) ;

volt buf1 = Puffer. tól től ( 'L' ) ;
volt buf2 = Puffer. tól től ( 'H' ) ;
volt x = Puffer. összehasonlítani ( buf1 , buf2 ) ;
konzol. log ( x ) ;

volt buf1 = Puffer. tól től ( 'H' ) ;
volt buf2 = Puffer. tól től ( 'L' ) ;
volt x = Puffer. összehasonlítani ( buf1 , buf2 ) ;
konzol. log ( x ) ;

A fenti kódsorokban:

  • A ' tól től() ” metódusok több pufferobjektumot hoznak létre a megadott karakterlánccal.
  • A ' összehasonlítani () ” metódus összehasonlítja az argumentumként átadott megadott pufferobjektumokat.
  • A ' console.log() ” metódus megjeleníti a „compare()” metódus eredményét a konzolon.

Kimenet
Futtassa a „.js” fájlt az alábbi paranccsal:

csomópont alkalmazás. js

Az eredményként megjelenő számértékek egyértelműen mutatják a meghatározott különbséget:

Most lépjen tovább a pufferek összefűzésére a Node.js-ben.

Hogyan lehet puffereket összefűzni a Node.js-ben?

A ' concat() ” módszer segít több puffer összekapcsolásában. Ez a módszer egy tömbben lévő összes célzott puffert egy pufferobjektumba fűzi össze a tartalmuk összevonásával.

Szintaxis

Puffer. concat ( arr , hossz ] )

A fenti szintaxis a következő két paraméteren működik:

  • arr : Megadja a pufferek tömbjét, amelyet a felhasználók össze akarnak fűzni.
  • hossz : Az összefűzött puffer hosszát jelöli.

A következő kódrészlet gyakorlatilag összefűzi az adott puffereket a definiált „concat()” metódussal:

volt buf1 = Puffer. tól től ( ' \n Linux \n ' ) ;
volt buf2 = Puffer. tól től ( 'Weboldal' ) ;
volt buf3 = Puffer. concat ( [ buf1 , buf2 ] ) ;
konzol. log ( 'A puffer3 tartalma: ' + buf3. toString ( ) ) ;

A fenti kódrészletben:

  • A ' tól től() ” metódusok két pufferobjektumot hoznak létre a megadott karakterlánccal.
  • A ' concat() ” metódus összekapcsolja a megadott puffert egy tömbben egy pufferobjektummá.
  • A ' toString() ” metódus dekódolja az összefűzött puffer tartalmát karakterlánc formátumba (ember által olvasható), majd megjeleníti a konzolban a „ console.log() ” módszerrel.

Kimenet
Most futtassa az alábbi parancsot a „.js” fájl végrehajtásához:

csomópont alkalmazás. js

A kimenet egy új pufferobjektumot jelenít meg, amely a megadott pufferek összefűzési eredményeként jön létre:

Leírtuk, hogyan lehet másolni, összehasonlítani és összefűzni a puffert a Nodejs-ben.

Következtetés

A puffer Nodejs programban való másolásához használja a „ Buffer.copy() ' és összehasonlítás céljából használja a ' Buffer.compare() ” módszerrel. Ezenkívül a pufferek összefűzéséhez használja a „ Buffer.concat() ” módszerrel. Mindezek a módszerek előre meghatározottak, egyszerűek és könnyen használhatók. Ez a bejegyzés a Node.js puffer másolásának, összehasonlításának és összefűzésének rövid leírását tartalmazza.