如果我写这个:
$('#SomeDiv').click(DoSomething);
function DoSomething() {
if (SomeCondition === true) {
return false;
}
// more code here
}
不管我是否放return
;或return false;
或return true;
代码不抛出异常并且函数执行停止。
哪个是最好的选择?
如果我写这个:
$('#SomeDiv').click(DoSomething);
function DoSomething() {
if (SomeCondition === true) {
return false;
}
// more code here
}
不管我是否放return
;或return false;
或return true;
代码不抛出异常并且函数执行停止。
哪个是最好的选择?
如果您只是想在某些条件下停止该函数并且不在乎它返回什么,那么您选择三个中的哪一个都没有关系。如果您不使用函数的输出,我只需使用一个简单的return;
语句来阻止它进一步执行。
如果这些是唯一的选项,请return;
在这种情况下使用。(参见下文)
如果函数通常返回一些东西(计算一些东西,获取一些值等),那么你肯定不想返回任何东西,因为你可能会混淆调用者。
如果您的函数通常不返回任何内容,那么返回您喜欢的任何内容可能不会有什么坏处,但它仍然可能会使调用者感到困惑。
我个人宁愿在else
之后放一个if
,而不是使用 return;。如果函数太大,只需将其缩回一点。