私は JavaScript/jQuery プラグイン開発でおなじみのパターンを見てきました (Modernizr はこの最初の例を使用しています)。関数は IIFE にうまくラップされ、ウィンドウオブジェクトでグローバルに定義されます。次のようにして、プラグイン/スクリプトをグローバルにアクセスできるようにすることをお勧めします。
window.myPluginName = (function (window, document, undefined) {
// Plugin logic
})(window, document);
一部のスクリプト/プラグインは、それらが呼び出されたDOMまたはドキュメント/ファイルの他の場所にアクセスする必要があるため、これを尋ねます。プラグイン内では、これも時々見られます。
(function (window, document, undefined) {
window.myPluginName = function () {
// Plugin logic
}
})(window, document);
そしてこれさえ:
(function (window, document, undefined) {
var myPluginName = function () {
// Plugin logic
}
window.myPluginName = myPluginName;
})(window, document);
私はセットアップの背後にある違いについて非常に興味をそそられます.もし私よりも経験豊富な誰かが開発に使用するのに最適なものについてアドバイスを提供するのに十分親切です. ありがとうございました!