Skip to content
Related Articles

Related Articles

Node.js Buffer.swap16() Method

View Discussion
Improve Article
Save Article
  • Last Updated : 13 Oct, 2021
View Discussion
Improve Article
Save Article

The Buffer.swap16() 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 16-bit numbers.

Syntax:

Buffer.swap16()

Parameters: This method does not accept any parameters.

Return value: It returns a reference to the swapped buffer.

Error thrown: It throws ERR_INVALID_BUFFER_SIZE if length of buffer (buf.length) is not a multiple of 2.

Below examples illustrate the use of Buffer.swap16() Method in Node.js:

Example 1:




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


Output:

<Buffer 01 02 03 04 05 06 07 08>
<Buffer 02 01 04 03 06 05 08 07>

Example 2: This example display the error thrown by this method.




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


Output:

<Buffer 07 05 02>
Entering catch block
RangeError [ERR_INVALID_BUFFER_SIZE]: Buffer size
must be a multiple of 16-bits
    at Buffer.swap16 (buffer.js:1042: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_swap16


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!