问题标签 [continue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
242 浏览

php - php continue X - c# 中的等价物

在 php 中:

continue 接受一个可选的数字参数,该参数告诉它应该跳到末尾的封闭循环的层数。

c# 中的等价物是什么?

一个简单的方法来做到这一点?

0 投票
4 回答
93677 浏览

php - php foreach 继续

如果不满足某些条件,我将尝试跳到循环的下一次迭代。问题是循环仍在继续。

我哪里出错了?

更新了代码示例以响应第一条评论。

0 投票
10 回答
39124 浏览

c# - ForEach() : 为什么不能在里面使用 break/continue

由于 ForEach() 方法循环遍历所有列表成员,为什么不能使用break/continue子句,而我可以在正常的 foreach 循环中使用它们

错误:

“没有可以中断或继续的封闭循环”

0 投票
1 回答
929 浏览

tcl - 在while循环中继续的奇怪行为

我在 TCL 编程方面相当新,通过阅读基础知识,我遇到了以下代码片段:

执行时,结果如下:

x is 1
x is 2
退出第二个循环,X 等于 7

令我惊讶的是,当执行 continue 命令时,似乎没有评估 while 循环测试 (x<3)。然而,在 tcl 手册页中声明“正文中的 continue 语句将停止代码的执行,并且将重新评估测试。

我错过了什么?

0 投票
3 回答
10006 浏览

scala - 是否可以使用 'yield' 来生成 'Iterator' 而不是 Scala 中的列表?

是否可以在不评估每个值的情况下使用 yield 作为迭代器?

当很容易实现复杂的列表生成时,这是一个常见的任务,然后你需要将它转换为Iterator,因为你不需要一些结果......

0 投票
2 回答
2505 浏览

python - Python:处理序列中的缺失文件

我有一个程序,基本上如下:

我试图找出一种方法来处理如果说文件 20 丢失将引发的异常,并告诉它continue. 我尝试使用continuewithtry语句,但是它一直抱怨我没有正确地将它放入循环中。任何意见,将不胜感激。

基本上我试过:

谢谢,

0 投票
6 回答
313 浏览

c# - 继续; 用于跳过许多循环

这是我的代码架构:

继续做什么?他只会让第二个循环迭代一次,不是吗?我希望它达到一段时间,这可能吗?

谢谢!

0 投票
3 回答
10348 浏览

loops - 为什么在循环内继续是一个坏主意?

Douglas Crockfod 说,重构continue循环内部通常会更好。

为什么 continue 在循环中被认为是坏的?

0 投票
4 回答
57444 浏览

php - PHP中“中断”或“继续”之后的数字是什么意思?

有人可以通过示例解释循环break 2continue 2PHP 中的含义吗?break当或continue后跟一个数字是什么意思?

0 投票
2 回答
780 浏览

php - PHP为什么继续n比使用break慢

请考虑以下代码:

鉴于上面的代码有效地使用 continue 2 来中断内部循环并跳过内部循环后的任何代码,为什么下面的代码看起来执行得更多时平均执行得更快:

感谢您的任何意见。

_ _ __更新_ _ __ _ __ _ __ _

感谢您的反馈,但我们似乎错过了重点。不管这是否是一种好的编程实践,我都试图理解为什么性能差异(很小但一致)不在我预期的偏差范围内。

true 到 microtime 的传递似乎无关紧要,因为两个样本都是使用相同的方法测量的,具有相同的开销和相同的不准确性。

正如使用“平均”一词所暗示的那样,测试了不止一次的运行。

只是为了说明,请考虑以下使用 microtime(true) 的小样本,其显示与使用 microtime() 相同的模式。

我知道这是一个小样本,但模式很清楚:

继续 0.00037288665771484 0.00048208236694336 0.00046110153198242 0.00039386749267578 0.0003662109375

断裂 0.00033903121948242 0.00035715103149414 0.00033307075500488 0.00034403800964355 0.00032901763916016

感谢您的关注,并感谢您提供任何进一步的反馈。

_ _ ___ 更新 进一步调查_ _ __ _ __ _ ___

有趣的是,如果从代码中删除了 echo 语句,则 continue 执行得更快,而使用 echo 语句时 break 会更快。

请考虑以下代码示例,并考虑结果是否存在冲突,具体取决于是否删除了 echo 语句:

存在 Echo 语句:

继续平均值 0.00014134283065796 中断平均值 0.00012669243812561

回声语句不存在:

继续平均值 0.00011746988296509 中断平均值 0.00013022310733795

请注意,通过从 break 和 flag 测试中删除 echo 语句,我们还删除了 ($flag === true) 检查,因此负载应该减少,但在这种情况下继续仍然会获胜。W

因此,在纯粹的 continue n 与 break + flag 场景中,似乎 continue n 是更快的构造。但是添加相同数量的相同 echo 语句,以及 continue n 性能标志。

从逻辑上讲, continue n 应该更快,这对我来说是有道理的,但我希望看到存在的 echo 语句相同。

这显然是生成的操作码的差异,并且 echo 语句的位置(内循环与外循环)有人知道查看生成的操作码的方法吗?我想这是我最终需要的,因为我试图了解内部正在发生的事情。

谢谢 :)