Node.js | Buffer.compare() Method

Buffer is a temporary memory storage which stores the data when it is being moved from one place to another. It is like an array of integers. Buffer.compare() method compares the two given buffers.

Syntax:

buffer1.compare( targetBuffer, targetStart,
            targetEnd, sourceStart, sourceEnd )

Parameters: This method accepts five parameters as mentioned above and described below:



  • targetBuffer: This parameter holds the buffer which will be compared with other buffer.
  • targetStart: It refers to the starting index from which the elements of target buffer will begin comparing. Its default value is 0.
  • targetEnd: It refers to the index till which the elements of target buffer will be compared. The default value is 0.
  • sourceStart: The index in input buffer from which the comparing of values will start. The default value is 0.
  • sourceEnd: The index in input buffer till which the comparing of values will be done. The default value is buffer.length

Return Value: It returns a number indicating the difference in both buffers. The returns number are:

  • 0: If they are equal.
  • 1: If buffer1 is higher than buffer2 i.e. if buffer1 should come before buffer2 when sorted.
  • -1: If buffer2 is higher than buffer1 i.e. if buffer2 should come before buffer1 when sorted.

Below examples illustrate the Buffer.compare() Method in Node.js:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the  
// Buffer.compare() Method
      
// Creating a buffer
var buffer1 = Buffer.from('Geek');
var buffer2 = Buffer.from('Geek');
var op = Buffer.compare(buffer1, buffer2);
console.log(op);
  
var buffer1 = Buffer.from('GFG');
var buffer2 = Buffer.from('Python');
var op = Buffer.compare(buffer1, buffer2);
console.log(op);

chevron_right


Output:

0
-1

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the  
// Buffer.compare() Method
      
// Creating a buffer
var buffer1 = Buffer.from('2');
var buffer2 = Buffer.from('1');
var buffer3 = Buffer.from('3');
var array = [buffer1, buffer2, buffer3];
  
// Before sorting
console.log(array);
  
// After sorting array
console.log(array.sort(Buffer.compare));

chevron_right


Output:

[ <Buffer 32>, <Buffer 31>, <Buffer 33> ]
[ <Buffer 31>, <Buffer 32>, <Buffer 33> ]

Example 3:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the  
// Buffer.compare() Method
       
var buffer1 = Buffer.from('GeeksOne');
var buffer2 = Buffer.from('GeekTwo');
   
// Print: -1 as size of buffer1 starting 
// from index 4 is less than buffer2 size
var op = buffer1.compare(buffer2, 4);
  
// Print: 1 as the size of buffer2 starting 
// from index 5 is less than size of buffer1
// starting from 0th index
var op1 = buffer1.compare(buffer2, 0, 7, 5);
   
console.log(op);
console.log(op1);

chevron_right


Output:

-1
1

Note: The above program will compile and run by using the node index.js command.

Reference: https://nodejs.org/api/buffer.html#buffer_buf_compare_target_targetstart_targetend_sourcestart_sourceend



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.