JavaScript中break、continue和return在循环中的行为差异

作者:小括号时间:2026-10-24 03:57:40浏览:486

本文详细解析JavaScript中break、continue和return在for循环中的行为差异。break用于跳出整个循环,continue跳过当前迭代,而return不仅跳出循环还会终止函数执行。特别指出在forEach中无法使用break和continue,且return仅相当于跳过当前迭代,不会跳出循环。

break、continue与return的基本区别

本文通过实例分析JavaScript中break、continue和return在循环控制中的具体区别,供读者参考。

break语句的作用是立即终止当前的for循环,跳出循环体,随后继续执行fn函数中循环之后的代码。


function fn() {
  for(var i = 0; i < 5; i++) {
    if(i == 3) {
      break;
    }
    console.log(i);
  }
  console.log("ha")
}
fn();//0 1 2 ha

continue语句仅跳过当前这一次循环迭代,不再执行循环体内continue之后的代码,但会进入下一次循环判断。当所有循环执行完毕后,继续执行fn函数中循环之后的代码。


function fn() {
  for(var i = 0; i < 5; i++) {
    if(i == 3) {
      continue;
    }
    console.log(i);
  }
  console.log("ha")
}
fn();//0 1 2 4 ha

return语句不仅会终止当前的for循环并跳出循环体,还会立即结束整个fn函数的执行,不再执行函数内后续的任何语句。


function fn() {
  for(var i = 0; i < 5; i++) {
    if(i == 3) {
      return;
    }
    console.log(i);
  }
  console.log("ha")
}
fn();//0 1 2

return的使用限制与错误处理

注意事项:

若在非函数作用域内直接编写包含return语句的代码,将会引发错误。

查阅JavaScript文档可知,return语句必须位于function内部。如果在非function环境中使用return,会抛出上述错误。


for(var i = 0; i < 5; i++) {
    if(i == 3) {
      return;
    }
    console.log(i);
  }

break、continue与return的基本区别

forEach中的循环控制限制

在forEach方法中,无法使用break和continue语句,尝试使用会报错。

break、continue与return的基本区别

break、continue与return的基本区别

在forEach中使用return也无法跳出整个循环,其效果类似于continue。


var a=[1,2,3,4,5,6,7,8,9]
a.forEach((item,index)=>{
	  if(item == 6) {
      return
    }else{
    	console.log(item);
    }
})

break、continue与return的基本区别

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

作者最新文章