El búfer es un almacenamiento de memoria temporal que almacena los datos cuando se mueven de un lugar a otro. Es como una array de números enteros.
El método Buffer.copy() simplemente copia todos los valores del búfer de entrada a otro búfer.
Sintaxis:
buffer.copy( target, targetStart, sourceStart, sourceEnd )
Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación:
- destino: es un búfer en el que debe copiar todos los valores.
- targetStart: Se refiere al índice de inicio a partir del cual comenzarán a escribirse los elementos del búfer de destino. Su valor por defecto es 0.
- sourceStart: Es el índice del búfer de entrada desde el que se iniciará la copia de valores. Su valor por defecto es 0.
- sourceEnd: el índice del búfer de entrada hasta el cual se realizará la copia de valores. Su valor predeterminado es buffer.length size.
Valor devuelto: este método devuelve el número que indica la cantidad de bytes copiados.
Nota: Copia los valores del búfer de entrada y los sobrescribe en el búfer de salida incluso si las regiones de memoria de destino (índices) ya existen. Copia datos de una región del búfer de entrada a una región en el búfer de destino incluso si la región de la memoria de destino se superpone con el búfer de entrada.
Los siguientes ejemplos ilustran el uso del método Buffer.includes() en Node.js:
Ejemplo 1:
// Node.js program to demonstrate the // Buffer.copy() Method // Creating a buffer var buffer2 = Buffer.from('for'); var buffer1 = Buffer.from('GeeksandGeeks'); buffer2.copy(buffer1, 5, 0); console.log(buffer1.toString());
Producción:
GeeksforGeeks
Ejemplo 2:
// Node.js program to demonstrate the // Buffer.copy() Method var buffer2 = Buffer.allocUnsafe(5); var buffer1 = Buffer.from('Geeks'); for (let i = 0; i < 5; i++) { // Adds: 'a b c d e' as 97 98 99 100 101 // are their respective ASCII values buffer2[i] = i + 97; } buffer2.copy(buffer1, 2); // Prints 'Geabc' as the input buffer1 // carries 'Geeks' and we provided the // targetStart index as 2 // so elements will replace the values in // buffer1 starting from index 2 console.log(buffer1.toString());
Producción:
Geabc
Nota: El programa anterior se compilará y ejecutará usando el node index.js
comando.
Referencia: https://nodejs.org/api/buffer.html#buffer_buf_copy_target_targetstart_sourcestart_sourceend