Node.js script.runInNewContext() Method Last Updated : 28 Apr, 2025 Comments Improve Suggest changes Like Article Like Report The script.runInNewContext() method first contextifies the stated contextObject, runs the compiled code inside the vm.Script object within the context created and then returns the output. However, the running code has no access to the local scope. Syntax: script.runInNewContext( contextObject, options ) Parameters: This method accept two parameters as mentioned above and described below: contextObject: It is an object that will be contextified and if it is undefined, then a new object will be created, options: It is optional and returns Object. It holds the following parameters: displayErrors: It holds a Boolean value i.e. true if an error is thrown while compiling the code and the line of code because of which an error is thrown is linked to the stack trace. Its by default value is true. timeout: It holds an integer value that specifies the number of milliseconds taken in order to execute the stated code before ending the execution. However, if an execution is closed then an error will occur. And the value for this must be a positive integer absolutely. breakOnSigint: It holds a Boolean value. If its true, then the execution will be stopped as soon as SIGINT i.e, (Ctrl+C) is provided. And if the execution is stopped then an error is thrown. Its by default value is false. contextName: It holds a string. It is human readable names of the newly generated context. And by default it is 'VM Context i' where, i is the index of the generated context that is ascending numerically. contextOrigin: It holds a string. It is the origin that is equivalent to the recently generated context. Moreover, the origin must be formed like a URL. Its by default value is ''. contextCodeGeneration: It is of type Object. It holds the following parameters: strings: It holds a Boolean value and if its set to false then any call to function constructors or eval will throw an error i.e, EvalError. Its default value is true. wasm: It holds a Boolean value and if it is set to false then any tries to compile a WebAssembly module will throw an error i.e, WebAssembly.CompileError. Its by default value is true. Return Value: It returns the result of the very last statement executed in the script. Below examples illustrate the use of script.runInNewContext() method in Node.js: Example 1: javascript // Node.js program to demonstrate the // script.runInNewContext() method // Including util and vm module const util = require('util'); const vm = require('vm'); // Constructing context const context = { x: 3, y:4 }; // Constructing a script const script = new vm.Script('x *=11, y *=4;'); // Calling runInNewContext method script.runInNewContext(context); // Displays output console.log("The output is: ", context); Output: The output is: { x: 33, y: 16 } Example 2: javascript // Node.js program to demonstrate the // script.runInNewContext() method // Including util and vm module const util = require('util'); const vm = require('vm'); // Creating contexts cont = { animal: 'dog', total_number: 5 }; // Creating script with its parameters var script = vm.createScript( 'total_number += 5; name = "Sheru"', 'file.vm'); // Calling runInNewContext method script.runInNewContext(cont); // Displays output console.log(cont); Output: { animal: 'dog', total_number: 10, name: 'Sheru' } Reference: https://nodejs.org/api/vm.html#vm_script_runinnewcontext_contextobject_options Comment N nidhi1352singh Follow Improve N nidhi1352singh Follow Improve Article Tags : Web Technologies Node.js Node.js- script-module Explore Node.js Tutorial 3 min read Introduction & Installation NodeJS Introduction 3 min read Node.js Roadmap: A Complete Guide 6 min read How to Install Node.js on Linux 6 min read How to Install Node.js on Windows 5 min read How to Install NodeJS on MacOS 6 min read Node.js vs Browser - Top Differences That Every Developer Should Know 6 min read NodeJS REPL (READ, EVAL, PRINT, LOOP) 4 min read Explain V8 engine in Node.js 7 min read Node.js Web Application Architecture 3 min read NodeJS Event Loop 5 min read Node.js Modules , Buffer & StreamsNodeJS Modules 5 min read What are Buffers in Node.js ? 4 min read Node.js Streams 4 min read Node.js Asynchronous ProgrammingAsync Await in Node.js 3 min read Promises in NodeJS 7 min read How to Handle Errors in Node.js ? 4 min read Exception Handling in Node.js 3 min read Node.js NPMNodeJS NPM 6 min read Steps to Create and Publish NPM packages 7 min read Introduction to NPM scripts 2 min read Node.js package.json 4 min read What is package-lock.json ? 3 min read Node.js Deployments & CommunicationNode Debugging 2 min read How to Perform Testing in Node.js ? 2 min read Unit Testing of Node.js Application 5 min read NODE_ENV Variables and How to Use Them ? 2 min read Difference Between Development and Production in Node.js 3 min read Best Security Practices in Node.js 4 min read Deploying Node.js Applications 5 min read How to Build a Microservices Architecture with NodeJS 3 min read Node.js with WebAssembly 3 min read Resources & ToolsNode.js Web Server 6 min read Node Exercises, Practice Questions and Solutions 4 min read Node.js Projects 9 min read NodeJS Interview Questions and Answers 15+ min read Like