• Node.js Video Tutorials

NodeJS v8.serializer.writeUint64() 方法



v8.serializer 類中的 NodeJS v8.serializer.writeUint64() 方法 用於將原始 64 位無符號整數寫入內部緩衝區。64 位無符號整數將被分成高 32 位和低 32 位部分。

Uint64 是一種 64 位無符號整數,其最小值為 0,最大值為 18,446,744,073,709,551,615 (2^64)-1(包含)。

此方法主要用於自定義 serializer._writeHostObject() 內部,該方法用於寫入某種主機物件。

語法

以下是 NodeJS v8.serializer.writeUint64() 方法的語法:

v8.serializer.writeUint64(high, low)

引數

此方法接受兩個引數。下面描述了這些引數。

  • high - 將寫入內部緩衝區的 64 位整數的高 32 位。

  • low - 將寫入內部緩衝區的 64 位整數的低 32 位。

返回值

此方法返回 undefined,而不是將傳遞的值(原始 64 位整數)寫入內部緩衝區。

示例

在下面的示例中,我們嘗試使用 NodeJS v8.serializer.writeUint64() 方法將原始 64 位無符號整數寫入內部緩衝區。

const v8 = require('v8');
const serializer = new v8.Serializer();
console.log(serializer.writeUint64(1234, 5678));

輸出

正如我們在下面的輸出中看到的,NodeJS writeUint64() 方法返回 undefined,而不是將傳遞的值寫入內部緩衝區。

undefined

示例

在下面的示例中,我們嘗試將一個 64 位無符號整數寫入內部緩衝區,該整數將被分成高 32 位和低 32 位部分。

const v8 = require('v8');
const serializer = new v8.Serializer();
console.log(serializer.releaseBuffer());
serializer.writeUint64(123, 567);
console.log(serializer.releaseBuffer());

輸出

<Buffer >
<Buffer b7 84 80 80 b0 0f>

示例

如果我們將多個 64 位無符號整數寫入內部緩衝區,則這些整數將連續新增。

const v8 = require('v8');
const serializer = new v8.Serializer();
console.log(serializer.releaseBuffer());
serializer.writeUint64(12, 56);
serializer.writeUint64(34, 78);
console.log(serializer.releaseBuffer());

輸出

<Buffer >
<Buffer b8 80 80 80 c0 01 ce 80 80 80 a0 04>
nodejs_v8_module.htm
廣告