如何在nodejs遍历模块中中断/停止遍历?
我正在遍历 json,在某些情况下,我想停止遍历。
遍历(req.body).forEach(函数(xnode){
log.info("检查 Node :"+xnode);
...
...
//如果检测到JSON威胁,则返回错误
if(Object.keys(err).length > 0){
返回下一个(新错误(JSON.stringify(err)));
//遍历应该在这里停止但它会继续
//我需要明确地打破它吗?
}
});
在调试过程中,我观察到 return 语句将控制发送到调用(连接)中间件,但遍历在后台继续。我在文档中没有找到任何中断/停止选项。发生错误后如何停止遍历?
预先感谢您的投入。
最佳答案
您可以使用.some
代替.forEach
。这将循环,但一旦返回 true
,它将停止循环。
if (Object.keys(err).length > 0) {
next(new Error(JSON.stringify(err));
return true;
}
return false;
关于node.js - nodejs遍历(js-traverse)模块: How to 'break' traversing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27869014/