Node.js Buffer.swap64() Method

Last Updated : 13 Oct, 2021
The Buffer.swap64() method is an inbuilt application programming interface of class Buffer within Buffer module which is used to swap the buffer byte order in-place. The swapping is performed by interpreting buffer as an array of 64-bit numbers. Syntax:
Buffer.swap64()
Parameters: This method does not accept any parameters. Return value: It returns the reference to the buffer. Error thrown: It throws ERR_INVALID_BUFFER_SIZE if length of buffer (buf.length) is not a multiple of 8. Below examples illustrate the use of Buffer.swap64() Method in Node.js: Example 1: javascript
// 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); 
Output:
<Buffer 07 00 01 01 04 05 04 06>
<Buffer 06 04 05 04 01 01 00 07>
Example 2: We will look at error thrown by this method javascript
// 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);
}
Output:
<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
    .......
Note: The above program will compile and run by using the node index.js command. Reference: https://nodejs.org/dist/latest-v13.x/docs/api/buffer.html#buffer_buf_swap64
Comment

Explore