"休息"这里有必要停止循环吗?无论是否有输出,输出都不会改变。
var cleanCities = ["Argentina" , "Brazil", "Canada", "Denmark"];
var visit = prompt("What is your city?");
var numLength = cleanCities.length;
var matchFound = false;
for (i=0; i<numLength ; i++)
if (visit === cleanCities[i]) {
matchFound = true;
alert ("It is really a nice City" + i)
break;
}
if (matchFound === false){
alert ("It is not in the List");
}
答案 0 :(得分:4)
包含break
:
如果cleanCities
在列表中包含两次匹配值,则用户将获得2“这是一个非常好的城市”警报。
如果您的数组包含大量项目,break
会更有效率,因为代码可能会停止查找其他值。
答案 1 :(得分:0)
在这种情况下结果可能是相同的,但一旦你有你需要的东西,快速的东西是一个很好的做法。使用休息是可行的方法。
答案 2 :(得分:0)
在当前情况下,break
不是必需的,
但它肯定会优化代码的性能。使用break
,一旦找到匹配项,就不会检查其他城市。
答案 3 :(得分:0)
没有必要这样,但如果您在cleanCities列表中有两次重复,即“阿根廷”,会发生什么。
最好是额外安全,并确保即使有意外数据,程序也能正常工作。
答案 4 :(得分:0)
休息是好事。如果输入阿根廷,则for循环将仅迭代一次并退出。如果列表很长,说500项,你会发现删除中断时的执行时间差异很大。
答案 5 :(得分:0)
基本上它会“断开”(停止)循环第一次时间它变为真的语句。
终止当前的循环,开关或标签语句,并将程序控制转移到终止语句后的语句。
来源:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/break
在您的示例中,它不会更改任何内容,因为每个国家/地区只有一次出现(而不是城市;),因此value
始终只匹配cleanCities
数组中的其中一个。如果您有多个具有相同名称的城市(国家/地区),则break会捕获第一个城市并停止循环。