0

1 つの外部スクリプト ファイルを含むページがあります。このスクリプト内では、3 つのグローバル オブジェクトが使用されます。

var oArticle = new Article();
var oUiManager = new UiManager();
var oController = new Controller();

私は今日、それらをすべて 1 つのオブジェクトに入れるよう提案されました。

var exercisePage = {
    "oArticle": new Article(),
    "oUiManager": new UiManager(),
    "oController": new Controller()
};

ページに 1 つのスクリプト ファイルのみを使用している場合、このようなアプローチの利点は何ですか?

4

1 に答える 1

2

このようにオブジェクトをグループ化すると、グローバル変数の競合の可能性が最小限に抑えられます。

多くの外部ライブラリを含めている場合は、互いの変数を踏まなくてもそれらがすべて機能することを確認する必要があります。

そうは言っても、ほとんどのライブラリはうまく機能するように設計されており、ユーザー定義の変数と衝突する可能性はほとんどありません。

それらをオブジェクトに入れるよりも良いですが、匿名の閉鎖さらに効果的です

(function(){
  var oArticle = new Article();
  var oUiManager = new UiManager();
  var oController = new Controller();

  // other code that uses these objects
})();
于 2013-11-05T08:32:43.370 に答える