0

我们经常需要确保在回调完成后执行不会返回到函数。 我的问题是,这两种风格在效果上有什么细微的差别,还是完全一样?:

function myFunction(foo, callback) {
    if(foo) {
      callback(err, true); //Here
      return;              //Here
    }
    bar();
}

和:

function myFunction(foo, callback) {
    if(foo) {
      return callback(err, true); //Here
    }
    bar();
}

编辑:对不起,我意识到我的问题不是很清楚。我说的是我不关心返回什么的情况(因为它不会被同步消耗),但返回只是为了确保回调函数完成后函数中的执行不会继续.

4

2 回答 2

1

作为编码风格的问题,如果一个人想return在一个函数中避免 s,有些人认为这是一件坏事,那么

function myFunction(foo, callback) {
    if(foo) {
        callback(err, true);
    } else {
        bar();
    }
}
于 2013-06-27T08:06:03.557 回答
1

这完全取决于您要返回的内容。

如果要返回回调返回的值,请先使用第二种方法

于 2013-06-27T06:59:49.817 回答