Node.js – v8.deserializer.readUint32() 方法

所述v8.deserializer.readUint32()方法用于读取原始的32位整数,并将其返回。这个方法基本上是用在.deserializer._readHostObject()

语法

v8.deserializer.readUint32()

参数

由于它从内部缓冲区读取值,因此不需要任何输入参数。这将返回包含 32 位整数的数组。

示例 1

创建一个名为“ readUint32.js ”的文件并复制以下代码片段。创建文件后,使用命令“ node readUint32.js ”运行此代码。

// v8.serializer.readUint32() 演示示例

// 导入 v8 模块
const v8 = require('v8');

// 初始化序列化器对象
const serializer = new v8.Serializer();

// 将 32 位整数值写入内部缓冲区
serializer.writeUint32(1234);

// 调用 v8.deserializer.readUint32()
const deserializer = new v8.Deserializer(serializer.releaseBuffer());
console.log(deserializer.readUint32());
输出结果
C:\home\node>> node readUint32.js
1234

示例 2

让我们再看一个例子——

// v8.serializer.readUint32() 演示示例

// 导入 v8 模块
const v8 = require('v8');

// 初始化序列化器对象
const serializer = new v8.Serializer();
var buffer;

// 将 64 位整数值写入内部缓冲区
function writeUint32(val) {
   serializer.writeUint32(val)
   buffer = serializer.releaseBuffer()
   console.log(buffer)
   readUint32(buffer)
}

function readUint32(buffer) {
   const deserializer = new v8.Deserializer(buffer);
   console.log(deserializer.readUint32(buffer));
}
writeUint32(1234)
writeUint32(12.22)
writeUint32(999999)
输出结果
C:\home\node>> node readUint32.js
<Buffer d2 09>
1234
<Buffer 0c>
12
<Buffer bf 84 3d>
999999