自己呼び出し関数を記述する次の方法を見てきました。
(function (app) {
app.foo = {
bar: function(){}
};
}(App));
App
グローバル オブジェクトはどこにありますか。
App
関数にパラメーターとして渡す必要があるのはなぜでしょうか。これを使用しないのはなぜですか:
(function () {
App.foo = {
bar: function(){}
};
}());
最初の方法を使用する利点は 1 つだけです。何らかの理由でApp
オブジェクトの名前を変更した場合、括弧内のパラメーターの名前を簡単に変更でき、コードはそのまま機能します。App
しかし、2 番目の方法の場合、使用するすべての場所でおそらく名前を変更する必要があります。
他に違いはありますか?