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:
- value_high: It is a required parameter, refers to the higher 32-bit of the 64-bit integer to be written to the internal buffer.
- value_low: It is a required parameter, refers to the lower 32-bit of the 64-bit integer to be written to the internal buffer.
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