3个关键词的含义和比较
在 break,continue和return 三个关键字中, break,continue是化为一类的,return 是函数返回语句,但是返回的同时也将函数停止。
相同之处:三个都会将此时进行的语句停止。
不同之处:
1、break:是立即结束语句,并跳出语句,进行下个语句执行。并没有跳出所有循环。
2、continue:是停止当前语句,并从头执行该语句。
3、return:停止函数。
4、使用的语句环境不一样,break和continue是用在循环或switch语句中,return是用在函数语句中。
举例说明其实际应用
break和continue
break 语句跳出循环后,会继续执行该循环之后的代码 (退出循环)
continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。(跳过当前迭代,进入下次迭代)
这两个应用的范围是退出循环或者switch语句,在其他地方使用会导致错误;
1、break:由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。
一个循环 使用如下:
for(let item of arr) {
if(item){
break
}
}
多层循环返回 使用如下:
outer:
for(var i=0;i<10;i++) {
inter:
for(var j=0;j<10;j++){
if(i>5){
console.log(i);
break outer; // 返回外层
}
}
}
outer
for(var i=0;i<10;i++) {
inter:
for(var j=0;j<10;j++){
if(i>5){
console.log(i);
break inter; // 返回内层
}
}
}
2、continue:和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。
continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!
for(var j=0;j<5;j++){
if(i>5){
continue
} else {
console.log(i) // 1234 当i=5的时候,直接跳出本次for循环。下次继续执行。
}
}
return语句
return语句就是用于指定函数返回的值。
return语句应用范围只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!
1、返回控制与函数结果
语法为:return 表达式;
语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果。
function format (data) {
if (data < 10){
return '0' + data
} else {
return data
}
}
2、返回控制
无函数结果,语法为:return;
在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为。
Return False 就相当于终止符,Return True 就相当于执行符。 返回的false和true通常用在需要进行布尔类型判断时。
比如你单击一个链接,除了触发你的onclick事件(如果你指定的话)以外还要触发一个默认事件就是执行页面的跳转。所以如果你想取消对象的默认动作就可以return false。我们也常用return false来阻止提交表单或者继续执行下面的代码。
function isFalse (num) {
if (num < 15) {
return false
}
}
isFalse(5)
即使a函数返回return false 阻止提交了,但是不影响 b()以及 c()函数的执行。在Test()函数里调用a()函数,那面里面
return false 对于Test()函数来说,只是相当于返回值。而不能阻止Test()函数执行。
总之: