0

我在用:

$.each(data.mydata, function(index, value){
  output += '<li>'+value.title+'</li>';
}

我需要测试一些东西,只希望循环从列表中删除 1。

有什么简单的方法可以做到这一点吗?

4

4 回答 4

10

通过返回 false 在回调中中断它。

$.each(data.mydata, function(index, value){
  output += '<li>'+value.title+'</li>';
  return false;
}
于 2012-08-28T13:27:12.963 回答
2

文档中:

通过使回调函数返回 false,我们可以在特定迭代中打破 $.each() 循环。返回非 false 与 for 循环中的 continue 语句相同;它将立即跳到下一次迭代。

所以return false在你的逻辑之后添加会产生预期的效果。

于 2012-08-28T13:27:44.520 回答
1

为什么不直接使用 for 循环呢

for(var i = 0; i < 1; i++) {
  output += '<li>'+data.mydata[i].title+'</li>';
}

或者根本没有循环

if(data.mydata.length > 0)
    output += '<li>'+data.mydata[i].title+'</li>';
于 2012-08-28T13:28:27.217 回答
0

如果你想要一个,你为什么要循环?

var myData = data.mydata;
var firstItem = myData[0];
var firstTitle = firstItem.title;

都在一条线上

var firstTitle = data.mydata[0].title;
于 2012-08-28T14:00:14.590 回答