Does return stop a loop?(return 会停止循环吗?)
问题描述
假设我有一个这样的循环:
Suppose I have a loop like this:
for (var i = 0; i < SomeArrayOfObject.length; i++) {
if (SomeArray[i].SomeValue === SomeCondition) {
var SomeVar = SomeArray[i].SomeProperty;
return SomeVar;
}
}
快速提问:return 本身会停止循环的执行吗?
Quick question: does the return stop the execution of the loop in and of itself?
推荐答案
是的,return 停止执行并退出函数.return always** 立即退出其函数,如果它在 for 循环中则不再执行.
Yes, return stops execution and exits the function. return always** exits its function immediately, with no further execution if it's inside a for loop.
很容易自己验证:
function returnMe() {
for (var i = 0; i < 2; i++) {
if (i === 1) return i;
}
}
console.log(returnMe());
** 注意:请参阅 this other answer 关于 try/catch/finally 的特殊情况code> 和 this answer 关于 forEach 循环如何它自己的函数范围不会脱离包含函数.
** Notes: See this other answer about the special case of try/catch/finally and this answer about how forEach loops has its own function scope will not break out of the containing function.
这篇关于return 会停止循环吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:return 会停止循环吗?
基础教程推荐
- Bokeh Div文本对齐 2022-01-01
- Bootstrap 模态出现在背景下 2022-01-01
- Fabric JS绘制具有活动形状的多边形 2022-01-01
- npm start 错误与 create-react-app 2022-01-01
- 在 contenteditable 中精确拖放 2022-01-01
- fetch 是否支持原生多文件上传? 2022-01-01
- 检查 HTML5 拖放文件类型 2022-01-01
- 原生拖动事件后如何获取 mouseup 事件? 2022-01-01
- 如何添加到目前为止的天数? 2022-01-01
- 即使用户允许,Gmail 也会隐藏外部电子邮件图片 2022-01-01
