1. 程式人生 > 實用技巧 >js跳出迴圈的方法區別(break,continue,return)

js跳出迴圈的方法區別(break,continue,return)

轉自:http://blog.csdn.net/fxss5201/article/details/52980138

js程式設計語法之break語句:

break語句會使執行的程式立刻退出包含在最內層的迴圈或者退出一個switch語句。

由於它是用來退出迴圈或者switch語句,所以只有當它出現在這些語句時,這種形式的break語句才是合法的。

如果一個迴圈的終止條件非常複雜,那麼使用break語句來實現某些條件比用一個迴圈表示式來表達所有的條件容易得多。

for(var i=1;i<=10;i++) { 
    if(i==8) { 
        break; 
    } 
    document.write(i); 
} 

當i=8的時候,直接退出for這個迴圈。這個迴圈將不再被執行!

//輸出結果:1234567

js程式設計語法之continue語句:

continue語句和break語句相似。所不同的是,它不是退出一個迴圈,而是開始迴圈的一次新迭代。

continue語句只能用在while語句、do/while語句、for語句、或者for/in語句的迴圈體內,在其它地方使用都會引起錯誤!

for(var i=1;i<=10;i++) { 
    if(i==8) { 
        continue; 
    } 
    document.write(i); 
} 

當i=8的時候,直接跳出本次for迴圈。下次繼續執行。

//輸出結果:1234567910

js程式設計語法之return語句:

return語句就是用於指定函式返回的值。return語句只能出現在函式體內,出現在程式碼中的其他任何地方都會造成語法錯誤!

for(var i=1;i<=10;i++) { 
    if(i==8) { 
        return; 
    } 
    document.write(i); 
} 

執行結果Uncaught SyntaxError: Illegal return statement(…)
意思是非法捕獲的查詢返回語句。

當執行return語句時,即使函式主體中還有其他語句,函式執行也會停止!

<script>
if (username==""){
   alert("請輸入使用者名稱");
   return false;
}
if(qq==""){
   alert("請輸入QQ");
   return false;
}
</script>

上面的例項裡,當username為空時,就不會再向下執行,在一些表單提交中,也可以通過return false來阻止預設的提交方式,改用Ajax的提交方式,例如:

<form id="form" onSubmit="return false">
...
</form>