本文介绍了如何在函数中的Java脚本中暂停FOR循环?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Google Places API中每秒查询的数量限制,因此我需要放慢发送请求的循环:
There's a query per second limit in Google Places API, so I need to slow down my loop which sends requests:
function callback(results, status) { if (status != google.maps.places.PlacesServiceStatus.OK) { alert(status); return; } for (var i = 0, result; result = results[i]; i++) { RequestInfo(result); } }有人知道我该怎么做吗?我有点新手.
Any idea how I can do that? I'm a bit of a newb.
推荐答案递归解决方案
function requestInfoWrapper(results, i) { i = i + 1; if (i >= results.length) {return}; requestInfo(results[i]); setTimeout(function() {requestInfoWrapper(results, i);}, 1000); }一些示例代码对其进行测试,
Some example code to test it,
var results = ["test 1", "test 2", "test 3"]; function requestInfo(str) {console.log(str);} requestInfoWrapper(results, -1);也将与您的代码集成在一起,
Also integrated with your code would just be,
function callback(results, status) { if (status != google.maps.places.PlacesServiceStatus.OK) { alert(status); return; } requestInfoWrapper(results, -1); }更多推荐
如何在函数中的Java脚本中暂停FOR循环?
发布评论