runInThisContext

fun runInThisContext(options: RunningScriptOptions = definedExternally): Any?(source)

Runs the compiled code contained by the vm.Script within the context of the current global object. Running code does not have access to local scope, but does have access to the current global object.

The following example compiles code that increments a global variable then executes that code multiple times:

const vm = require('node:vm');

global.globalVar = 0;

const script = new vm.Script('globalVar += 1', { filename: 'myfile.vm' });

for (let i = 0; i < 1000; ++i) {
script.runInThisContext();
}

console.log(globalVar);

// 1000

Since

v0.3.1

Return

the result of the very last statement executed in the script.