Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当结束条件可能不满足时,while循环的最佳实践是什么?_Javascript_Loops_While Loop - Fatal编程技术网

Javascript 当结束条件可能不满足时,while循环的最佳实践是什么?

Javascript 当结束条件可能不满足时,while循环的最佳实践是什么?,javascript,loops,while-loop,Javascript,Loops,While Loop,当结束条件可能不满足时,While循环的最佳实践是什么?真的在寻找一个独立于语言的答案,但如果它有帮助的话,我正在用Java脚本编写代码 我在一个HR数据库中循环,在层次结构中穿行,寻找一个符合条件的值。从理论上讲,每次都应该达到这个条件。然而,在一百万分之一的机会中,这一条件没有实现;我不想让代码对无限循环开放 我的解决方案是简单地添加一个随着每个循环递增的整数;当计数满足硬编码值时,将中断循环 我不喜欢这个解决方案,它摸起来很脏。我也不喜欢把循环留给无限循环的可能性 您在这个场景中做了什么?

当结束条件可能不满足时,While循环的最佳实践是什么?真的在寻找一个独立于语言的答案,但如果它有帮助的话,我正在用Java脚本编写代码

我在一个HR数据库中循环,在层次结构中穿行,寻找一个符合条件的值。从理论上讲,每次都应该达到这个条件。然而,在一百万分之一的机会中,这一条件没有实现;我不想让代码对无限循环开放

我的解决方案是简单地添加一个随着每个循环递增的整数;当计数满足硬编码值时,将中断循环

我不喜欢这个解决方案,它摸起来很脏。我也不喜欢把循环留给无限循环的可能性


您在这个场景中做了什么?

考虑到您希望至少进入一次迭代,最佳实践是使用do/while循环。你做你想做的,然后检查条件是否满足

当条件满足时,您将继续执行所需操作,这意味着继续循环。通过这种方式,您可以跟踪循环并跟踪到精确的点


最终条件不可能不满足

使用一些大型计数器来突破基于时间、基于事件的限制……我个人在开发时也使用计数器。但是对于一个真实场景,你应该尝试为你的循环找到一个不同的设计,这样你就可以处理其中所有逻辑上可能的情况。我很确定HR还没有开发出世界上第一个无限数据库。一旦完成循环,就不能指望它会结束吗?好吧,有一个SQL调用会在每个循环中被修改并重新运行,它基于从上一个循环中检索到的数据。理论上,如果数据库中存在坏用户数据;循环可能会发现自己处于无限循环中。