1. 程式人生 > >JQuery跳出each循環的方法(包含數組遍歷)

JQuery跳出each循環的方法(包含數組遍歷)

title syn alert 回調 如果 包含 ron line scrip

0. 前言

也許我們通過 jquery 的循環方法進行數組遍歷,但是當不符合條件時,怎麽跳出當前循環?(即用each方法內,當不滿足條件時想break跳出循環體,想continue繼續執行下一個循環遍歷),我們經常會習慣JS中的break何continue,但是使用之後沒有效果,因為在JQuery中沒有這兩條命令,非其關鍵字。

1. JQuery each循環,要實現break和continue的功能

break ----用return false;
continue --用return ture;

2. JQuery怎麽跳出當前的each循環

API 上的說明只有跳出整個循環(如果需要退出 each 循環可使回調函數返回 false,其它返回值將被忽略。)

return false;——跳出所有循環;相當於 javascript 中的 break 效果。
return true;——跳出當前循環,進入下一個循環;相當於 javascript 中的 continue 效果

例子代碼如下:

1 2 3 4 5 6 7 8 9 $(function (){ $("input[type=‘text‘]").each(function (i){ var _val=$(this).val(); alert(_val);
if(_val==‘2‘){ return false; //跳出循環 } }) });

3. JQuery each方法跳出循環並獲得返回值的方法

return false:將停止循環 (就像在普通的循環中使用 ‘break‘)。
return true:跳至下一個循環(就像在普通的循環中使用‘continue‘)。

代碼如下:
1 2 3 4 5 6 7 8 9 10 function test(){ var success =
false; $(..).each(function () { if (..) { success = true; return false; } }); return success ; }

JQuery是對象鏈,所以$(..).each()返回的還是對象集合。each(function(){}):是回調函數,在回調函數裏不能返回結果到回調函數each外面。

四. 參考

http://www.jb51.net/article/64213.htm

JQuery跳出each循環的方法(包含數組遍歷)