前几天我正在阅读2011年6月的“连线”杂志,我看到路易斯安那州经济发展广告,可能是用ActionScript编写的。
我原本以为这是一个聪明的广告,但在调查之后,似乎代码中存在一个相当明显的错误。
只是我,还是break
应该是return
?
答案 0 :(得分:1)
不会像错误的逻辑那样把它称为错误......中断会让你退出循环,但如果你输入该功能,你将导航到该URL,无论你是否对所有这些都感兴趣事情与否。
答案 1 :(得分:0)
答案 2 :(得分:0)
代码只导航到该页面而不考虑函数之前的变量,如果这是函数的意图,那么它是正确的但是执行得很糟糕,因为循环和它之前的所有内容都是冗余的。也许广告是一个求助的呼吁,因为代码是错误的,而且公司正在寻找雇佣有能力的开发人员来纠正已经雇用的人的错误。
答案 3 :(得分:0)
我称之为一个错误,因为如果保留了这些利益中的任何一个,那么期望的结果很可能是导航到URL,如果没有,则不执行任何操作。因此,我会将逻辑更改为以下内容(暂时忽略scriptocalypse评论中提到的问题):
if (this.innovator.hasInterestIn(interest[i])){
navigateToURL("www.OpportunityLouisiana.com/digital");
return;
}
当然,这在广告中看起来不太好,因为URL不会突出显示在代码的底部。也许更好的选择是在循环中组织逻辑,如下所示:
if (this.innovator.hasInterestIn(interest[i])){
break;
} else if (i == n-1){
return;
}