4

私はいくつかのコードをリファクタリングしています。交換できますか

function next () {
    // call next using setTimeout
}
next();

(function next () {
    // call next using setTimeout
}());

次に開始する必要があり、そこから一定回数自分自身を呼び出します。

4

1 に答える 1

9

どちらも可能で、どちらも再帰呼び出しを有効にします (これが IIFE の命名のポイントです)。

それらの唯一の違いは、2 番目のものは、関数からのみ表示される関数の名前で外部の名前空間を汚染しないことです。もちろん、その結果、他の場所から関数を呼び出すことができなくなります。

于 2013-03-30T17:31:15.057 に答える