我无法摆脱 for 循环。
现在,循环在每个页面上执行一个 jQuery getJSON 调用。如果页面有数据,它会记录所有项目。如果页面没有数据,循环应该完全停止。
但是,每当我运行它时,它都会遍历所有 100 页。一旦点击没有数据的页面,它会记录“此页面没有内容”,但会继续运行 for 循环。(因此在我的控制台中以源源不断的“此页面没有内容”结束)
我究竟做错了什么?
我想避免抛出一个i = NOTANINTEGER
停止循环
for (var i=0; i< 100; i++)
{
var breakForLoop = false;
var API = "http://www.foo.com/bar.json?page=" + i;
$.getJSON(API, function(data) {
var items = {};
// logs items from page run only when the page has data
if (data.length > 0) {
$.each( data, function(i, item) {
console.log(item.text);
});
}
// the page has no data, therefore remainder pages have no data too
else {
console.log("this page has no content");
breakForLoop = true;
return;
}
});
if (breakForLoop) {
break;
}
}