我有一段代码,我正在尝试break
循环播放,但我无法做到。它是if
内部的原因,如果是那么另一种方式是什么?
var myMessages = [];
for(var i = 0; i < bots.length; i++){
if ( bots[i].getInventory().getItems().length < capacity ){
var executed = false;
bots[i].createDeposit({
steamid: req.query.steamid,
token: req.query.token,
itemsFromThem: uniqueItems,
message: req.query.message,
callback: function( err, dbTradeId ){
if ( !executed ){
executed = true;
if ( !err && dbTradeId ){
res.json({ result: 1, dbTradeId: dbTradeId });
break; //Break Is Here
} else {
console.log('» Tried to create deposit, but',err);
myMessages.push("Problem");
res.json({ error: err });
}
}
}
});
} else {
console.log('» Tried to create deposit, but no bot found(2)');
myMessages.push("Available bot not found(2)");
}
}
} else {
console.log('» Tried to create deposit, but no bot found');
myMessages.push("Available bot not found");
}
} catch(e){
return res.json({ error: e.message, stack: e.stack });
}
console.log(JSON.stringify( myMessages));
答案 0 :(得分:1)
你的休息是在一个封闭回调中,你正在尝试的是不可能的。循环时不调用回调。即使它是,它也是一个不同的词法范围,它失去了打破循环的权限。