Método Node.js Buffer.swap64()

El método Buffer.swap64() es una interfaz de programación de aplicaciones incorporada de la clase Buffer dentro del módulo Buffer que se utiliza para intercambiar el orden de bytes del búfer en el lugar. El intercambio se realiza interpretando el búfer como una array de números de 64 bits.

Sintaxis:

Buffer.swap64()

Parámetros: este método no acepta ningún parámetro.

Valor devuelto: Devuelve la referencia al búfer.

Error arrojado: arroja ERR_INVALID_BUFFER_SIZE si la longitud del búfer (buf.length) no es un múltiplo de 8.

Los siguientes ejemplos ilustran el uso del método Buffer.swap64() en Node.js:

Ejemplo 1:

// Node.js program to demonstrate the 
// Buffer.swap64() method 
      
// Creating a buffer 
const buf = Buffer.from([0x7, 0x0, 0x1,
              0x1, 0x4, 0x5, 0x4, 0x6]); 
  
// Display the buffer value
// before swap 
console.log(buf); 
  
// Using Buffer.swap64() method
buf.swap64();
      
// Display the result 
// after swap
console.log(buf); 

Producción:

<Buffer 07 00 01 01 04 05 04 06>
<Buffer 06 04 05 04 01 01 00 07>

Ejemplo 2: Veremos el error arrojado por este método

// Node.js program to demonstrate the 
// Buffer.swap64() method 
      
// Creating a buffer 
const buf = Buffer.from([0x0,
         0x1, 0x2, 0x3, 0x4, 0x5]); 
  
// Display the buffer value
// before swap 
console.log(buf); 
  
try {
    // Using Buffer.swap64() method
    // It will throw error
    buf.swap64();
  
    // Display the result 
    // after swap
    console.log(buf);
}
catch(e) {
    console.log("Entering catch block");
  
    // Display error
    console.log(e);
}

Producción:

<Buffer 00 01 02 03 04 05>
Entering catch block
RangeError [ERR_INVALID_BUFFER_SIZE]: Buffer size must be a multiple of 64-bits
    at Buffer.swap64 (buffer.js:1059:11)
    at /home/runner/index.js:14:9
    .......

Nota: El programa anterior se compilará y ejecutará usando el node index.jscomando.

Referencia: https://nodejs.org/dist/latest-v13.x/docs/api/buffer.html#buffer_buf_swap64

Publicación traducida automáticamente

Artículo escrito por Rajnis09 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *