超过查询限制和最大调用堆栈大小
Over query limit and maximum call stack size
在这里,我用谷歌地图、谷歌位置、routebox库创建了一个代码,以显示两个位置之间的方向,并用谷歌位置显示方向附近(10,20,30英里)的对象。
以下是演示和代码:http://jsbin.com/EVEWOta/55但在尝试了从马德里到莫斯科的"10米"距离后,我出现了以下错误:
...
...
...
OVER_QUERY_LIMIT 55:121
199
OVER_QUERY_LIMIT 55:121
OK 55:121
1268
OVER_QUERY_LIMIT 55:121
3
OVER_QUERY_LIMIT
Uncaught RangeError: Maximum call stack size exceeded
此代码:
service.nearbySearch(request, function (results, status) {
console.log(status);
if (status == 'OVER_QUERY_LIMIT') {
setTimeout(findPlaces(boxes,searchIndex),10000);
}else{
document.getElementById('side_bar').innerHTML += "bounds["+searchIndex+"] returns "+results.length+" results<br>";
for (var i = 0, result; result = results[i]; i++) {
var marker = createMarker(result);
}
if (++searchIndex < boxes.length)
setTimeout(findPlaces(boxes,searchIndex),10000);
}
});
此代码停止在方框[14]中搜索。为什么?
在调用下一个框之前,我用10s输入代码setTimeot
?
这里真正的问题是什么?
您必须将findPlaces
的调用封装到一个函数中,否则该函数将立即被调用,而不会有所需的延迟:
setTimeout(function(){findPlaces(boxes,searchIndex);},10000);
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- 超过了async.detect最大调用堆栈大小
- 如何远程检查JavaScript应用程序的函数调用堆栈
- 超过了最大调用堆栈大小,循环无限
- 超过了最大调用堆栈大小.递归标签
- 日志:未捕获的范围错误:超过了最大调用堆栈大小
- 未捕获的范围错误:setTimeout()超过了最大调用堆栈大小
- JavaFX+WebView/Javascript:setTimeOut不起作用调用堆栈来自Java
- JavaScript继承:未捕获的范围错误:超过了最大调用堆栈大小
- 使用$cookies和$stateChangeStart检查sessionID是否超过了最大调用堆栈
- jQuery捕获"RangeError:超过了最大调用堆栈大小“;
- 设置这个.RangeError:超过了最大调用堆栈大小
- 收到“范围错误: 超出最大调用堆栈大小”错误
- 递归 - 测试最大堆栈大小时,调用堆栈无法弹出
- 轮询 ajax 函数超出调用堆栈
- Chrome RangeError:使用jQuery$.map时超过了最大调用堆栈大小
- 要求JS 2.1.9引起“;最大调用堆栈"使用Grunt时出错
- Chrome/jQuery未捕获范围错误:超过了最大调用堆栈大小(函数循环)
- 超过了最大调用堆栈大小-没有明显的递归
- 警告:字体加载过程中出错:轨道上的PDFJS超过了最大调用堆栈大小错误