NodeJS - v8.serializer.writeDouble() 方法



v8.serializer 类 的 NodeJS v8.serializer.writeDouble() 方法用于将 JavaScript 数字值写入内部缓冲区。

JavaScript 数字值表示浮点数,例如 32、324.52 或 -214.43。

此方法主要在用于编写某种宿主对象的自定义 serializer._writeHostObject() 内部使用。

语法

以下是NodeJS v8.serializer.writeDouble()方法的语法 -


 v8.serializer.writeDouble(value)

参数

此方法只接受一个参数。

  • value − 将写入内部缓冲区的 JavaScript 数字值。

返回值

此方法返回 undefined,而是将 JavaScript 数字值写入内部缓冲区。

在下面的示例中,我们尝试编写一个 JavaScript 数字值,该值将使用 NodeJS v8.serializer.writeDouble() 方法写入内部缓冲区。


const v8 = require('v8');
const serializer = new v8.Serializer();
console.log(serializer.writeDouble(2343.3252));

输出

正如我们在下面的输出中看到的,writeDouble() 方法返回 undefined,它将传递的值写入内部缓冲区。

undefined

在以下示例中,我们尝试将 JavaScript 数字值写入内部缓冲区。然后我们释放内部缓冲区来检查是否写入了 JavaScript 数字。


const v8 = require('v8');
const serializer = new v8.Serializer();
serializer.writeDouble(2343.3252);
console.log(serializer.releaseBuffer());

输出

如果我们编译并运行上述代码,输出将如下所示 -

<Buffer 52 49 9d 80 a6 4e a2 40>