我对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'
有什么建议吗? 感谢
答案 0 :(得分:1)
return result = model.id
;将返回赋值的结果,它将是model.id,因此不是假的,所以不会突破循环 - 你不想要这个,你想要返回false来突破循环 - freedomn-m
存储结果和返回
if (mode === Zone.Mode) {
result = model.id;
return false;
}