jQuery在第一场比赛时停止循环?

时间:2015-05-13 10:04:34

标签: jquery

我对jQuery很新,我很想知道在第一场比赛后是否可以停止.each循环。

到目前为止,这是我的代码:

(function() {
  var result;
  result = null;
  this.model.each(function(model, index, collection) {
    var mode;
    mode = model.get("Mode");
    if (mode === Zone.Mode) {
      return result = model.id;
    }
  });
  console.debug("Room = " + result);
  return result;
});

显然它返回循环的最后一个匹配。

我需要的是返回第一个元素,这就是我尝试过的:

(function() {
  var result;
  result = null;
  this.model.each(function(model, index, collection) {
    var mode;
    mode = model.get("Mode");
    if (mode === Zone.Mode & (result = null)) {
      return result = model.id;
    }
  });
  console.debug("Room = " + result);
  return result;
});

基本上我已添加到if语句& (result = null),但控制台返回'Room = null'

有什么建议吗? 感谢

1 个答案:

答案 0 :(得分:1)

return result = model.id;将返回赋值的结果,它将是model.id,因此不是假的,所以不会突破循环 - 你不想要这个,你想要返回false来突破循环 - freedomn-m

存储结果和返回

if (mode === Zone.Mode) {
  result = model.id;
  return false;
}