moduleglobal
Global object, the base object accessible to all scripts
object
Buffer
Binary data cache object forioData processing for reading and writing, seeBufferobject.
1Buffer global.Buffer;
TextDecoder
TextDecoderdecode object, seeTextDecoderobject.
1TextDecoder global.TextDecoder;
TextEncoder
TextEncoderencoding object, seeTextEncoderobject.
1TextEncoder global.TextEncoder;
console
console access object
1console global.console;
process
process object
1process global.process;
performance
Basic performance monitoring module
1performance global.performance;
static function
run
run a script
1
2static global.run(String fname,
Array argv = []);
Call parameters:
- fname: String, specifies the script path to run
- argv: Array, specifies the parameters to run, this parameter can be obtained using argv in the script
require
Load a module and return the module object, see @ref module for more information
1static Value global.require(String id);
Call parameters:
- id: String, specifies the name of the module to load
return result:
- Value, returns the exported object of the loaded module
require can be used to load base modules, file modules.
The basic module is the module initialized when the sandbox is created, and you only need to pass the corresponding id when referencing, such as require("net").
The file module is a user-defined module, and the relative path starting with ./ or ../ needs to be passed when referencing. The file module supports .js, .jsc and .jsondocument.
The file module also supports the package.json format. When the module is in a directory structure, require will first query the main in package.json, and if it is not found, it will try to load index.js, index.jsc or index.json in the path.
If the reference path does not start with ./ or ../, and it is not a basic module, require searches from node_modules under the path where the current module is located, and recurses from the parent directory.
The basic process is as follows:
setTimeout
Call a function after a specified time
1
2
3static Timer global.setTimeout(Function callback,
Number timeout = 1,
...args);
Call parameters:
- callback: Function, specify the callback function
- timeout: Number, specifies the delay time in milliseconds. If it exceeds 2^31, execute it immediately.
- args: ..., additional parameters, passed to the specified callback, optional.
return result:
- Timer, returns the timer object
clearTimeout
Clear the specified timer
1static global.clearTimeout(Value t);
Call parameters:
- t: Value, specifies the timer to be cleared
setInterval
Call a function after every specified interval
1
2
3static Timer global.setInterval(Function callback,
Number timeout,
...args);
Call parameters:
- callback: Function, specify the callback function
- timeout: Number, specifies the interval time in milliseconds. If it exceeds 2^31, execute it immediately.
- args: ..., additional parameters, passed to the specified callback, optional.
return result:
- Timer, returns the timer object
clearInterval
Clear the specified timer
1static global.clearInterval(Value t);
Call parameters:
- t: Value, specifies the timer to be cleared
setHrInterval
Call the function after a specified interval. This is a high-precision timer that will actively interrupt the running JavaScript script execution timer
1
2
3static Timer global.setHrInterval(Function callback,
Number timeout,
...args);
Call parameters:
- callback: Function, specify the callback function
- timeout: Number, specifies the interval time in milliseconds. If it exceeds 2^31, execute it immediately.
- args: ..., additional parameters, passed to the specified callback, optional.
return result:
- Timer, returns the timer object
Because the timer of setHrInterval will interrupt the running code to execute the callback, so do not modify the data that may affect other modules in the callback function, or call any API function marked as async in the callback, otherwise unpredictable results will be produced. For example:
1
2
3
4
5
6
7
8
9
10var timers = require('timers');
var cnt = 0;
timers.setHrInterval(() => {
cnt++;
}, 100);
while (cnt < 10);
console.error("===============================> done");
In this code, the loop at line 8 will not end because of the change of cnt, because JavaScript will determine that cnt will not be changed during this loop when optimizing the code.
clearHrInterval
Clear the specified timer
1static global.clearHrInterval(Value t);
Call parameters:
- t: Value, specifies the timer to be cleared
setImmediate
Execute the callback function immediately at the next free time
1
2static Timer global.setImmediate(Function callback,
...args);
Call parameters:
- callback: Function, specify the callback function
- args: ..., additional parameters, passed to the specified callback, optional.
return result:
- Timer, returns the timer object
clearImmediate
Clear the specified timer
1static global.clearImmediate(Value t);
Call parameters:
- t: Value, specifies the timer to be cleared
btoa
bybase64way to encode data
1
2static String global.btoa(Buffer data,
Boolean url = false);
Call parameters:
return result:
- String, returns the encoded string
atob
bybase64way to decode a string into binary data
1static Buffer global.atob(String data);
Call parameters:
- data: String, the string to decode
return result:
- Buffer, returns the decoded binary data
GC
Mandatory Garbage Collection
1static global.GC();
static property
Master
Worker,Workerhost object, only inWorkerThe entry script works
1static readonly Worker global.Master;
global
Object, global object
1static readonly Object new global;
argv
Array, get the running parameters of the current script, start js to get the process startup parameters, run the executed script to get the passed parameters
1static readonly Array global.argv;
__filename
String, current script file name
1static readonly String global.__filename;
__dirname
String, the directory where the current script is located
1static readonly String global.__dirname;