我是PHP和ActionScript开发人员,在我的一些函数中,我使用return
来结束它。例如:
private function lolsome(a:String):void
{
if(a == "abs"){return void;}
// function's code
}
我可以将函数的代码放入else
,但我更喜欢这种方式,因为在我看来,这更容易辨认。我只是想知道这是否被认为是一种不好的做法或类似的事情。
谢谢!
答案 0 :(得分:5)
不。一点也不。事实上,它通常是一个重要的控制流程:
for x in someiterable:
if somecondition:
return somevalue
return None
如果您正在迭代查找满足特定条件的序列,则可能会出现这种情况。如果您发现了某些内容,则将其返回并阻止进一步处理。如果您从未找到它,则返回默认值。
答案 1 :(得分:4)
如果你在长期复杂的函数中返回,我只会认为这是不好的做法,因为在查看算法时,其他人可能更难理解算法。但是,首先要有大的长函数是不好的做法(它们通常应该分成多个较小的函数)。
总的来说,我会考虑在函数开头验证参数和状态,然后返回做好练习,甚至不行。
但是仍然要注意不要在主逻辑中乱丢几个不同回报的函数。
答案 2 :(得分:1)
我根本不认为这是不好的做法。它被广泛使用。
答案 3 :(得分:1)
有关进一步有趣的阅读,请在Google上查询"multiple vs single return"。那里有很多热量。替代方案通常是保持你的返回状态,最后只返回一次。就个人而言,我宁愿尽快抛弃,而不是冒一些国家进一步修改的风险;更小的更集中的方法有助于阻止这种情况发生。
我说你的练习很好。
答案 4 :(得分:0)
当我懒得宣布旗帜并测试它时,我会使用它。但事实是:如果你在代码中间使用break,return和那种指令,你有时必须在添加函数时重构它。
所以我认为这是一种不好的做法,但非常习惯。嗯,这只是我的意见:p