Open In App

Node.js v8.Serializer.writeUint64() Method

The v8.Serializer.writeUint64() method is an inbuilt application programming interface of the v8.Serializer module which is used to write a raw 64-bit integer value to the internal buffer by splitting into high and low 32-bit integers. For use inside of custom serializer._writeHostObject()method .

Syntax:



v8.Serializer.writeUint64(Value_high, Value_low);

Parameters: This method accept two parameters as mentioned above and described below:

Return Value: This method does not return anything but writes raw 64-bit integer value to the internal buffer.



Below examples illustrate the use of v8.Serializer.writeUint64() method in Node.js:

Example 1:

Filename: index.js




// Accessing v8 module
const v8 = require('v8');
const serializer = new v8.Serializer();
  
// Calling v8.serializer.writeUint64() method
// Nothing is returned so, this should 
// print undefined
console.log(serializer.writeUint64(5783, 78374));
console.log(serializer.releaseBuffer());

Run index.js file using the following command:

node index.js

Output:

undefined
<Buffer a6 e4 84 80 f0 d2 05>

Example 2:

Filename: index.js




// Accessing v8 module
const v8 = require('v8');
const serializer = new v8.Serializer();
  
// Calling v8.serializer.writeUint64() 
console.log(serializer.releaseBuffer());
serializer.writeUint64(29698, 3847);
console.log(serializer.releaseBuffer());
  
// Trying to write two 64 bit numbers
// one after another
serializer.writeUint64(29698, 3847);
serializer.writeUint64(29698, 3847);
console.log(serializer.releaseBuffer());
  
// Reading after write
// Calling v8.serializer.writeUint64() 
serializer.writeUint64(6783, 348072);
  
// Calling v8.deserializer.readUint64() 
const deserializer = new 
    v8.Deserializer(serializer.releaseBuffer());
console.log(deserializer.readUint64());

Run index.js file using the following command:

node index.js

Output:

<Buffer >
<Buffer 87 9e 80 80 a0 80 1d>
<Buffer 87 9e 80 80 a0 80 1d 87 9e 80 80 a0 80 1d>
[ 6783, 348072 ]

Reference: https://nodejs.org/api/v8.html#v8_serializer_writeuint64_hi_lo


Article Tags :