通过传递 parms 进入 JavaScript 循环的计时
Timing into javascript loop with passing parms
谁能给我一个建议如何计时这个函数:我正在尝试执行:
GameBaccarat.prototype.playHands = function(requests) {
for (var i = 0; i < 3; i++) {
if (game.instance.players[i]) {
var hand = i;
game.instance.hand = i;
this.activeHands += 1;
var request = requests[i];
connector.sendRequest(request, function() {
var xhr = this;
game.instance.handleDealResult(hand, xhr)
});
}
}
}
喜欢:
setTimeout(function(){connector.sendRequest(request, function() {var xhr = this; game.instance.handleDealResult(hand, xhr) });}, i*200);
但到目前为止还没有成功。.请帮忙:)
附言我尝试通过,var that = this,并将其添加到超时,dosent 工作:(
试:
var that = this;
setTimeout(function(){
connector.sendRequest(request, function() {
var xhr = that;
game.instance.handleDealResult(hand, xhr) });
}, i*200, that);
不起作用,只是崩溃了回调:(
如果您只想对多个请求进行排序,则可以像这样操作,即仅在前一个请求完成时才开始下一个请求,并保留一个计数器来记录您已完成的请求数:
GameBaccarat.prototype.playHands = function(requests) {
var requestCntr = 0, numRequests = 3;
var xhr = this;
function next() {
if (requestCntr < numRequests && game.instance.players[requestCntr]) {
game.instance.hand = requestCntr;
xhr.activeHands += 1;
connector.sendRequest(requests[requestCntr], function() {
game.instance.handleDealResult(requestCntr, xhr);
++requestCntr;
next();
}
}
}
next();
}
如果要对请求之间排序并添加延迟,则可以为启动下一个请求添加setTimeout()
延迟:
GameBaccarat.prototype.playHands = function(requests) {
var requestCntr = 0, numRequests = 3;
var xhr = this;
function next() {
if (requestCntr < numRequests && game.instance.players[requestCntr]) {
game.instance.hand = requestCntr;
xhr.activeHands += 1;
connector.sendRequest(requests[requestCntr], function() {
game.instance.handleDealResult(requestCntr, xhr);
++requestCntr;
// 1 second delay before next requeset
setTimeout(next, 1000);
}
}
}
next();
}
相关文章:
- 控制器不会进入for循环:javascript
- 使用来自不同循环Javascript的数据创建数组
- 在for循环-Javascript中创建新对象
- 日期循环 Javascript
- 在循环 javascript 内部创建一个数组
- 使用 for 循环 JavaScript 的打印范围
- 使用RegExp循环数组而不是for循环(Javascript)
- 如何避免循环Javascript
- 如何停止循环 - Javascript 100%
- 我想让我的程序重新运行开头,有点像循环 JavaScript
- css转换在for循环javascript中无法正常工作
- 在for循环javascript中创建对象
- do/while语句中的if-elseif语句无限循环javascript
- 在for循环Javascript中对数字进行分类和计数
- 如何一次运行一次循环javascript
- 请,需要帮助循环Javascript事件
- 在递归循环javascript之后,为JSON键变量使用自定义HTML元素
- 嵌套循环javascript棋盘
- 如何重新启动循环javascript循环
- 在循环 JavaScript 之后刷新页面