可恢复的错误


\Recoverable errors

在 REPL 提示符下,按 Enter 将当前输入行发送到 eval 函数。为了支持多行输入,eval 函数可以返回 repl.Recoverable 的实例给提供的回调函数:

\At the REPL prompt, pressing Enter sends the current line of input to the eval function. In order to support multi-line input, the eval function can return an instance of repl.Recoverable to the provided callback function:

function myEval(cmd, context, filename, callback) {
 let result;
 try {
 result = vm.runInThisContext(cmd);
 } catch (e) {
 if (isRecoverableError(e)) {
 return callback(new repl.Recoverable(e));
 }
 }
 callback(null, result);
}
function isRecoverableError(error) {
 if (error.name === 'SyntaxError') {
 return /^(Unexpected end of input|Unexpected token)/.test(error.message);
 }
 return false;
} 

AltStyle によって変換されたページ (->オリジナル) /