Node.js – v8.deserialize() 方法

V8。deserialize()方法提供了一种将序列化缓冲区反序列化回原始文本的方法。此方法使用带有默认选项的默认解串器从缓冲区读取原始 JS 值。

语法

v8.deserialize(buffer)

参数

  • buffer - 将被反序列化的输入缓冲区。

该函数在对输入缓冲区进行反序列化后返回原始文本输出。

示例 1

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

// v8.deserialize() 演示示例

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

// 初始化数据变量
var data = "Welcome tonhooo.com!"

// 序列化值
var serializedValue = v8.serialize(data);

// 打印序列化和反序列化的值
console.log('Serialized data : ', serializedValue)
console.log('Data after de-serializing', v8.deserialize(serializedValue))
输出结果
C:\home\node>> node deserialize.js
Serialized data : <Buffer ff 0d 22 1c 57 65 6c 63 6f 6d 65 20 74 6f 20 54 75 74 6f 72 69 61 6c 73 20 50 6f 69 6e 74 20 21>
Data after de-serializing Welcome tonhooo.com!

示例 2

让我们再看一个例子

// v8.deserialize() 演示示例

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

// 初始化数据变量
var data = "Welcome tonhooo.com!"

// 序列化值
var serializedValue = v8.serialize(data);

// 打印序列化和反序列化的值
console.log('Serialized data : ', serializedValue)
console.log('Data after de-serializing', v8.deserialize(serializedValue))

var number = v8.serialize(12345);
console.log('Serializing numbers', v8.serialize(number))
console.log('Data after de-serializing', v8.deserialize(number))

var decimal = v8.serialize(12345.543);
console.log('Serializing decimal', v8.serialize(decimal))
console.log('Data after de-serializing', v8.deserialize(decimal))
输出结果
C:\home\node>> node deserialize.js
Serialized data : <Buffer ff 0d 22 1c 57 65 6c 63 6f 6d 65 20 74 6f 20 54 75 74 6f 72 69 61 6c 73 20 50 6f 69 6e 74 20 21>
Data after de-serializing Welcome tonhooo.com!
Serializing numbers <Buffer ff 0d 5c 0a 06 ff 0d 49 f2 c0 01>
Data after de-serializing 12345
Serializing decimal <Buffer ff 0d 5c 0a 0b ff 0d 4e dd 24 06 81 c5 1c c8 40>
Data after de-serializing 12345.543