0

ここで初歩的な質問が来ます: 次のように書かれた jQuery コードを見ました:

    var PRINCIPAL = {};

PRINCIPAL.Function = function($element) {
    var self = this;
    /*more vars*/

    this.init = function() {
        self.initialFunction();
    };
    this.initialFunction = function() {
        /*code here*/
    };
    this.secondOne = function() {
        /*code here*/
    };
    this.init();
};
    /*associative array below??*/
PRINCIPAL.array = {
    CONFIGURATION: 10,
    CONFIGURATION2: 200,
    init: function($element) {
        /*code here*/
    },
    firstFunction: function() {
        /*code here*/
    },
    secondOne: function() {
        /*code here*/
    },  
    thirdOne: function() {
        /*code here*/
    }
};
/*and at the end it stars all functions inside the blocks*/
$(function() {
    PRINCIPAL.array.init($('#element'));
});

さて、上記のような配列(?)がたくさんあり、他の関数もいくつかあり、すべてのコードはすべてブロックに分割されていました。よくわかりませんが、これは一種のプログラミングスタイルですか、それとも何ですか?

4

3 に答える 3

0

これはよくある (そして良い) 質問です。

こちらをご覧ください: http://ejohn.org/apps/learn/

「名前付き関数」から始めて、下に向かって作業します。

例のコードは、このチュートリアルの手法を使用しています。ただし、例は不十分に書かれています。

于 2013-05-20T13:48:51.797 に答える
0

JavaScript では{}、配列ではなくオブジェクトを示します。(ただし、オブジェクトは本質的に連想配列またはハッシュと考えることができます。)

これらはすべてfunction() {}匿名関数であり、後で実行する変数に関数を格納するためにここで使用されます (関数は単なるオブジェクトであり、格納できます)。PRINCIPAL.arrayクロージャーを使用して JavaScript のクラスをエミュレートできるため、ここでは本質的に擬似クラスです (JS にはクラスが組み込まれていません)。

于 2013-05-20T13:44:03.343 に答える