13

写作:

if (...) {
    return;
}

在 MongoDb shell 脚本中会抱怨:SyntaxError: return not in function

我也尝试过exitmongo 控制台命令:

if (...) {
    exit;
}

但你得到错误:ReferenceError: exit is not defined

如何提前终止js脚本文件中的执行?

4

3 回答 3

19

在 mongodb 中,您可以使用此处quit()记录的函数。虽然没有很好地记录,但我做了一个快速测试,可以返回一个非零退出代码,这将退出 w/状态 1。quit(1)

于 2014-06-03T01:44:06.453 回答
6

我使用了以下解决方案:

(function(){

    // now you can use the return keyword anywhere:
    if (/* some condition */) {
        print("This is an error condition");
        return;
    }

})();

我知道以这种方式终止脚本不会mongo返回不同于 0 的错误代码(正如公认的解决方案所做的那样)。

于 2013-07-25T10:27:20.057 回答
3

在对该主题进行一些搜索之后,似乎使用exitlike 语句停止 javascript 执行的首选方法是实际抛出一些东西:是否可以停止 JavaScript 执行?,这个问题要么是最常见的例子,要么是我认为唯一可行的例子。

于 2013-07-24T12:20:55.410 回答