- break: 退出迴圈或者switch語句,在其他地方使用會導致錯誤!
for(var i=1;i<=10;i++) {
if(i==5){
break;
}
console.log(i);//輸出結果:1234
}
console.log(1);//i==5,直接退出for迴圈,執行迴圈外面的之後的語句
複製程式碼
- continue: 用在while語句、do/while語句、for語句、或者for/in語句的迴圈體內,在其它地方使用都會引起錯誤!
for(var i=1;i<=10;i++) {
if(i==5) {
continue;
}
console.log.(i);//輸出結果:1234678910
}
//當i=5,跳出本次for迴圈,繼續執行下一次。
複製程式碼
- return: 函式返回,同時函式停止,用在函式中,在其它地方使用都會造成語法錯誤!
//return 表示式;
//結束函式執行,返回撥用函式,而且把表示式的值作為函式的結果.
function a(){
return 10;
document.write(50);//不執行
};
a();//10
//return;
//結束函式執行,返回撥用函式,無函式結果.
function a(){
var aa=0;
return ;//返回值為undefined
var bb=0; //不會被執行的
}
複製程式碼
//return false;
//呼叫"return false"的時候,它實際上做了3件事情:
//1.event.preventDefault();阻止瀏覽器執行預設行為
//2.event.stopPropagation();事件冒泡
//3.停止回撥函式執行並立即返回.
ps:只有當你同時需要preventDefault和stopPropagation,並且你的程式碼可以接受直到你的回撥執行
完成才停止執行瀏覽器的預設行為,那你就可以使用"return false"。
function a(){
var aa=0;
return false;//返回值為false
var bb=0; //不會被執行的
}
複製程式碼
//retrun true;
function a(){
var aa=0;
return true;//返回值為true
var bb=0; //不會被執行的
}
複製程式碼
ps1:自己的使用心得,不對請指正
//break和continue可以跳出指定迴圈,break和continue之後不加任何迴圈名則預設跳出其所在的迴圈,
//在其後加指定迴圈名,則可以跳出該指定迴圈(指定迴圈一般為迴圈巢狀的外迴圈)。
outer:for(var i=0;i<10;i++){
inter: for(var j=0;j<10;j++){
if(i>5){
console.log(i); ----6
break outer;
}
}
}複製程式碼
ps2:自己的使用心得,不對請指正
jquery 的 each 方法中不能使用break結束迴圈,也不能使用continue來結束本次迴圈,想要實現類似的功
能就只能用return。return true 相當於是 continue,而 return false 相當於是 break。其實return
;在each也相當於continue,each只有return false;才能結束迴圈。
jquery 的 each 方法雖然return 了,但是並未實際 return 值作為方法的返回值,而是僅僅跳出each或
者進入下一次迴圈.
$(".test-div").each(function () {
var id = $(this).attr("id").toString();
if(id=='2'){
return true;
}
if(id == '10'){
return false;
}
});
複製程式碼