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:
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:
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:
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.