默认的解释器提供了获取存在于全局作用域中的任何变量的途径。
可以通过给每个 REPLServer 绑定的 context 对象指定变量,来显式地把变量暴露给 REPL。
例如:
const repl = require('repl');const msg = 'message';repl.start('> ').context.m = msg;
context 对象的属性表现为 REPL 中的局部变量:
$ node repl_test.js> m'message'
默认情况下 context 的属性不是只读的。
要指定只读的全局变量,context 的属性必须使用 Object.defineProperty() 来定义:
const repl = require('repl');const msg = 'message';const r = repl.start('> ');Object.defineProperty(r.context, 'm', {configurable: false,enumerable: true,value: msg});
