repl.start([options])
options<Object> | <string>prompt<string> 要显示的输入提示。 默认值:'> '(带有尾随空格)。input<stream.Readable> 将从中读取 REPL 输入的Readable流。 默认值:process.stdin。output<stream.Writable> REPL 输出将写入的Writable流。 默认值:process.stdout。terminal<boolean> 如果true,则指定output应被视为 TTY 终端。 默认: 在实例化时检查output流上isTTY属性的值。eval<Function> 当评估每一给定输入行时要使用的函数。 默认: JavaScripteval()函数的异步封装器。eval函数可能会出现repl.Recoverable错误,表明输入不完整并提示输入额外的行。useColors<boolean> 如果为true,则指定默认的writer函数应在 REPL 输出中包含 ANSI 颜色样式。 如果提供了自定义writer函数,则此功能无效。 默认: 如果 REPL 实例的terminal值为true,则检查output流上的颜色支持。useGlobal<boolean> 如果为true,则指定默认评估函数将使用 JavaScriptglobal作为上下文,而不是为 REPL 实例创建新的单独上下文。 node CLI REPL 将此值设置为true。 默认值:false。ignoreUndefined<boolean> 如果为true,则指定默认编写器在计算结果为undefined时不会输出命令的返回值。 默认值:false。writer<Function> 在写入output之前调用以格式化每个命令的输出的函数。 默认值:util.inspect().completer<Function> 用于自定义 Tab 自动完成的可选函数。 有关示例,请参见readline.InterfaceCompleter。replMode<symbol> 指定默认求值器是在严格模式还是默认(宽松)模式下执行所有 JavaScript 命令的标志。 可接受的值是:repl.REPL_MODE_SLOPPY在宽松模式下计算表达式。repl.REPL_MODE_STRICT在严格模式下计算表达式。 这相当于在每个 repl 语句前面加上'use strict'。
breakEvalOnSigint<boolean> 当接收到SIGINT时停止计算当前代码段,例如按下 Ctrl+C。 这不能与自定义eval函数一起使用。 默认值:false。preview<boolean> 定义 repl 是否打印自动完成和输出预览。 默认值:true使用默认 eval 函数和false,以防使用自定义 eval 函数。 如果terminal为假,则没有预览,preview的值没有影响。
- 返回: <repl.REPLServer>
repl.start() 方法创建并启动了一个 repl.REPLServer 实例。
如果 options 是字符串,则指定输入提示:
const repl = require('repl');
// Unix 风格的提示
repl.start('$ ');options<Object> | <string>prompt<string> The input prompt to display. Default:'> '(with a trailing space).input<stream.Readable> TheReadablestream from which REPL input will be read. Default:process.stdin.output<stream.Writable> TheWritablestream to which REPL output will be written. Default:process.stdout.terminal<boolean> Iftrue, specifies that theoutputshould be treated as a TTY terminal. Default: checking the value of theisTTYproperty on theoutputstream upon instantiation.eval<Function> The function to be used when evaluating each given line of input. Default: an async wrapper for the JavaScripteval()function. Anevalfunction can error withrepl.Recoverableto indicate the input was incomplete and prompt for additional lines.useColors<boolean> Iftrue, specifies that the defaultwriterfunction should include ANSI color styling to REPL output. If a customwriterfunction is provided then this has no effect. Default: checking color support on theoutputstream if the REPL instance'sterminalvalue istrue.useGlobal<boolean> Iftrue, specifies that the default evaluation function will use the JavaScriptglobalas the context as opposed to creating a new separate context for the REPL instance. The node CLI REPL sets this value totrue. Default:false.ignoreUndefined<boolean> Iftrue, specifies that the default writer will not output the return value of a command if it evaluates toundefined. Default:false.writer<Function> The function to invoke to format the output of each command before writing tooutput. Default:util.inspect().completer<Function> An optional function used for custom Tab auto completion. Seereadline.InterfaceCompleterfor an example.replMode<symbol> A flag that specifies whether the default evaluator executes all JavaScript commands in strict mode or default (sloppy) mode. Acceptable values are:repl.REPL_MODE_SLOPPYto evaluate expressions in sloppy mode.repl.REPL_MODE_STRICTto evaluate expressions in strict mode. This is equivalent to prefacing every repl statement with'use strict'.
breakEvalOnSigint<boolean> Stop evaluating the current piece of code whenSIGINTis received, such as when Ctrl+C is pressed. This cannot be used together with a customevalfunction. Default:false.preview<boolean> Defines if the repl prints autocomplete and output previews or not. Default:truewith the default eval function andfalsein case a custom eval function is used. Ifterminalis falsy, then there are no previews and the value ofpreviewhas no effect.
- Returns: <repl.REPLServer>
The repl.start() method creates and starts a repl.REPLServer instance.
If options is a string, then it specifies the input prompt:
const repl = require('repl');
// a Unix style prompt
repl.start('$ ');