大家讲道理2017-05-19 10:44:45
関数内で関数自体に値を代入すると、この状況が発生します
たとえば、この関数:
function oneAddTwo () {
let result = 1 + 2
oneAddTwo = function () {return result}
return result
}
実際のアプリケーションのシナリオとして、現在のブラウザが何であるかを判定する関数があり、この関数には初回実行時に現在のブラウザが IE であると判断されます。明らかに、この関数を 2 回目に呼び出す場合は、その一連の判定ロジックを実行する必要はありません。この場合、この関数では、それ自体を別の関数に割り当てることができます。最初の実行後の新しい関数は
を直接返すことができます。
迷茫2017-05-19 10:44:45
handleBundleComplete は変数
ですが、この変数は最初に関数に代入されます。
その後、呼び出されるときに、その変数は再び別の関数に代入されます。
それは単なる代入ではありませんか?