• Node.js Video Tutorials

NodeJS v8.deserializer.readValue() 方法



NodeJS v8.deserializer.readValue() 方法是 v8.deserializer 類的一個方法,用於反序列化寫入內部緩衝區(使用 writeValue() 方法)的 JavaScript 值。

語法

以下是NodeJS readValue() 方法的語法:

v8.deserializer.readValue()

引數

此方法不接受任何引數。

返回值

此方法在反序列化後返回內部緩衝區中的 JavaScript 值。

示例

在下面的示例中,我們首先嚐試使用 v8.serializer.writeValue() 方法將 JavaScript 值寫入內部緩衝區。然後,我們嘗試使用 v8.deserializer.readValue() 方法讀取並返回內部緩衝區中的值。

const v8 = require('v8');

// Defining the serializer object
const serializer = new v8.Serializer();

// Writing some value to internal buffer
console.log(serializer.writeValue('TutorialsPoint'));

// Defining the deserializer object
const deserializer = new v8.Deserializer(serializer.releaseBuffer());

// Reading the headers from internal buffer
console.log(deserializer.readValue());

輸出

true
TutorialsPoint

示例

在這個例子中,我們嘗試將一個頭部而不是值寫入內部緩衝區。因此,readValue() 方法將丟擲一個錯誤。

const v8 = require('v8');

// Defining the serializer object
const serializer = new v8.Serializer();

// Writing some value to internal buffer
serializer.writeHeader('TutorialsPoint');

// Defining the deserializer object
const deserializer = new v8.Deserializer(serializer.releaseBuffer());

// Reading the headers from internal buffer
console.log(deserializer.readValue());

錯誤

以下是以上程式碼的輸出:

/home/cg/root/63b6984e13ac0/main.js:13
console.log(deserializer.readValue());
                         ^

Error: Unable to deserialize cloned data.
    at Object.<anonymous> (/home/cg/root/63b6984e13ac0/main.js:13:26)
    at Module._compile (internal/modules/cjs/loader.js:702:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
at Module.load (internal/modules/cjs/loader.js:612:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
    at Function.Module._load (internal/modules/cjs/loader.js:543:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:744:10)
    at startup (internal/bootstrap/node.js:238:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
nodejs_v8_module.htm
廣告

© . All rights reserved.