Come copiare, confrontare e concatenare un buffer in Node.js?

Come Copiare Confrontare E Concatenare Un Buffer In Node Js



Il buffer è la raccolta di dati binari archiviati temporaneamente in una particolare memoria. Il suo scopo principale è gestire e trasferire i dati binari memorizzati da un luogo all'altro. In Node.js, l'utente può accedere a quella particolare memoria con l'aiuto del modulo 'Buffer' integrato.

Il buffer è più simile all''array' JavaScript ma con una differenza ovvero la sua dimensione non può essere modificata una volta impostata. Le caratteristiche comuni di questo modulo sono scrittura, lettura, confronto, copia, conversione e molte altre. Tutte le operazioni specificate possono essere eseguite utilizzando i metodi e le proprietà integrati.

Questo blog fornirà una breve descrizione di come copiare, confrontare e concatenare un buffer in Node.js.







Cominciamo con l'operazione di “copia”.



Come copiare un buffer in Node.js?

IL ' Buffer.copia() 'Il metodo consente agli utenti di copiare un oggetto buffer in un altro. Di conseguenza, questo metodo restituisce un buffer appena aggiornato. Il funzionamento di questo metodo dipende dalla seguente sintassi:



buf. copia ( targetBuffer [ , targetStart ] [ , sourceStart ] [ , sourceEnd ] )

Secondo la sintassi sopra, il metodo “copy()” assegna i seguenti parametri:





  • targetBuffer : Specifica l'oggetto Buffer il cui contenuto deve essere copiato in un altro oggetto buffer.
  • targetStart : Indica la posizione in cui inizierà l'operazione di copia. Il suo valore predefinito è '0'.
  • sourceStart : Indica la posizione in cui avrà inizio l'operazione di copia. Il suo valore predefinito è '0'.
  • sourceEnd : Rappresenta la posizione finale in cui si interromperà l'operazione di copia. Il suo valore predefinito è la “fine di un buffer”.

Il seguente blocco di codice mostra l'implementazione pratica del metodo “copy()”:

era buf1 = Respingente. da ( '123' ) ;
era buf2 = Respingente. alloc ( 3 ) ;
buf1. copia ( buf2 ) ;
consolle. tronco d'albero ( 'Il contenuto di Buffer2 è: ' + buf2. accordare ( ) ) ;

Nelle righe di codice sopra:



  • IL ' da() Il metodo crea un oggetto buffer con gli interi specificati.
  • IL ' alloc() ” costruisce un oggetto buffer di una dimensione allocata.
  • IL ' copia() Il metodo copia il contenuto preesistente del primo buffer nel secondo oggetto buffer.
  • IL ' accordare() Il metodo ' decodifica il contenuto copiato in formato stringa (leggibile dall'uomo) e quindi lo visualizza nella console utilizzando il metodo ' console.log() ' metodo.

Produzione
Esegui il comando indicato per avviare il file '.js':

nodo app. js

Si può vedere che il contenuto di un buffer è stato copiato nel secondo buffer:

Come confrontare un buffer in Node.js?

Per confrontare un buffer in Node.js, utilizzare il metodo integrato ' Buffer.compare() ' metodo. Questo metodo confronta due buffer e restituisce un valore numerico come output standard che mostra le differenze definite. Questi valori numerici sono elencati di seguito insieme alle relative differenze definite:

  • 0 : I buffer sono uguali.
  • 1 : Il buffer 1 è maggiore del buffer 2.
  • -1 : Il buffer 1 è inferiore al buffer 2.

Sintassi

buf. confrontare ( otherBuffer ) ;

La sintassi del metodo “compare()” supporta solo un argomento essenziale che è “ otherBuffer ”.

Usiamo praticamente la sintassi sopra definita:

era buf1 = Respingente. da ( 'Linux' ) ;
era buf2 = Respingente. da ( 'Linux' ) ;
era X = Respingente. confrontare ( buf1 , buf2 ) ;
consolle. tronco d'albero ( X ) ;

era buf1 = Respingente. da ( 'L' ) ;
era buf2 = Respingente. da ( 'H' ) ;
era X = Respingente. confrontare ( buf1 , buf2 ) ;
consolle. tronco d'albero ( X ) ;

era buf1 = Respingente. da ( 'H' ) ;
era buf2 = Respingente. da ( 'L' ) ;
era X = Respingente. confrontare ( buf1 , buf2 ) ;
consolle. tronco d'albero ( X ) ;

Nelle righe di codice sopra:

  • IL ' da() I metodi creano più oggetti buffer con la stringa specificata.
  • IL ' confrontare() ” confronta gli oggetti buffer specificati passati come argomento.
  • IL ' console.log() ' visualizza il risultato del metodo 'compare()' sulla console.

Produzione
Esegui il file '.js' utilizzando il comando seguente:

nodo app. js

I valori numerici visualizzati come output risultante mostrano chiaramente la differenza definita:

Ora passiamo alla concatenazione dei buffer in Node.js.

Come concatenare i buffer in Node.js?

IL ' concat() ' Il metodo aiuta a unire più di un buffer. Questo metodo concatena tutti i buffer di destinazione in un array in un unico oggetto buffer unendo i loro contenuti.

Sintassi

Respingente. concat ( arr , lunghezza ] )

La sintassi precedente funziona sui seguenti due parametri:

  • arr : Specifica l'array di buffer che gli utenti desiderano concatenare.
  • lunghezza : Indica la lunghezza del buffer concatenato.

Il seguente frammento di codice concatena praticamente i buffer specificati utilizzando il metodo 'concat()' definito:

era buf1 = Respingente. da ( ' \N Linux \N ' ) ;
era buf2 = Respingente. da ( 'Sito web' ) ;
era buf3 = Respingente. concat ( [ buf1 , buf2 ] ) ;
consolle. tronco d'albero ( 'Il contenuto di Buffer3 è: ' + buf3. accordare ( ) ) ;

Nello snippet di codice sopra:

  • IL ' da() I metodi creano rispettivamente due oggetti buffer con la stringa specificata.
  • IL ' concat() Il metodo ' unisce il buffer specificato in un array in un oggetto buffer.
  • IL ' accordare() ' Il metodo decodifica il contenuto del buffer concatenato in formato stringa (leggibile dall'uomo) e quindi lo visualizza nella console utilizzando il metodo ' console.log() ' metodo.

Produzione
Ora esegui il comando indicato di seguito per eseguire il file '.js':

nodo app. js

L'output visualizza un nuovo oggetto buffer creato nel risultato della concatenazione dei buffer specificati:

Abbiamo spiegato come copiare, confrontare e concatenare il buffer in Nodejs.

Conclusione

Per copiare il buffer in Nodejs, utilizzare il comando ' Buffer.copia() ' e a fini comparativi applicare il ' Buffer.compare() ' metodo. Inoltre, per concatenare i buffer, utilizzare il comando ' Buffer.concat() ' metodo. Tutti questi metodi sono predefiniti, semplici e facili da usare. Questo post ha fornito una breve descrizione di come copiare, confrontare e concatenare un buffer in Node.js.