0

私は次のような関数を持っています:

function MyFunction() {

  //do some work

  if (SomeCondition === true) {
     //do some work
     FunctionToCall();
  }
  //do some more work
}

function FunctionToCall() {...}

FunctionToCall()を呼び出したとしても、続行したくありませんdo some more work。ステートメントの後にreturntrueまたはreturnfalseステートメントを置く必要がありFunctionToCall();ますか?両方で動作するようです。

ありがとう。

4

4 に答える 4

4

returnあなたが言ったように、あなたはへの呼び出しの後に置く必要があるでしょうFunctionToCall。それの音によって、あなたが何を返すかは問題ではありません(これは戻りますundefined):

if (SomeCondition === true) {
    //do some work
    FunctionToCall();
    return;
}

の結果を気にした場合はFunctionToCall、そこから返された値を返すことができます。

return FunctionToCall();

または、ステートメントelseを使用せずに、を使用することもできます(これも返されます)。returnundefined

if (SomeCondition === true) {
    //do some work
    FunctionToCall();
}
else {
    //do some more work
}
于 2012-05-31T13:00:56.777 に答える
3

return;関数の戻り値を無視しているので、単に行うことができます。

于 2012-05-31T13:01:24.223 に答える
1

はい、このような次の関数の呼び出しの後または直前にreturnステートメントを配置する必要があります

return FunctionToCall();

また

FunctionToCall();
return;
于 2012-05-31T13:01:17.493 に答える
0

常に-contextで使用MyFunction()している場合は、voidreturn;

FunctionToCall()別のコンテキストでも呼び出される可能性がある場合はreturn true/false、次の行を入力することをお勧めします。

于 2012-05-31T13:01:58.980 に答える