停止功能时javascript返回

时间:2012-08-13 17:46:35

标签: javascript

如果我写这个:

$('#SomeDiv').click(DoSomething);

function DoSomething() {

  if (SomeCondition === true) {
     return false;
  }

  // more code here
}

无论我是否放return;或return false;return true;代码不会抛出异常,函数执行也会停止。

哪个是最佳选择?

2 个答案:

答案 0 :(得分:2)

如果您只是想在某些条件下停止该功能并且不关心它返回什么,那么您选择的三个中的哪一个并不重要。如果你没有使用函数的输出,我只需使用一个简单的return;语句来阻止它进一步执行。

答案 1 :(得分:2)

如果这些是唯一选项,请在这种情况下使用return;。 (见下文)

如果函数通常会返回某些内容(计算某些内容,获取某些值等),那么您肯定不想返回任何内容,因为您可能会混淆调用者。

如果您的功能通常不会返回任何内容,那么返回您喜欢的任何内容可能并没有什么坏处,但它可能仍会让来电者感到困惑。

我个人宁愿在else之后放一个if,而不是使用return;。如果函数变得太大,只需将它缩回一点。