Heim >Web-Frontend >js-Tutorial >Beispiel für einen Javascript-Namespace-Mustercode

Beispiel für einen Javascript-Namespace-Mustercode

怪我咯
怪我咯Original
2017-07-07 15:08:271143Durchsuche

Der

Namespace wird erstellt, indem ein globales Objekt für das Projekt oder die Bibliothek erstellt und dann alle Funktionen zu dieser globalen Variable hinzugefügt werden. Durch die Reduzierung der Anzahl globaler Variablen im Programm wird eine einzige globale Variable implementiert, wodurch bei einer großen Anzahl von Funktionen, Objekten und anderen Variablen keine globale Verschmutzung entsteht und auch Probleme wie Namenskonflikte vermieden werden

Wenn Sie jedoch das -Attribut zu einem Namespace in verschiedenen Dateien hinzufügen, müssen Sie zunächst sicherstellen, dass der Namespace bereits vorhanden ist, und gleichzeitig den vorhandenen Namespace nicht beschädigen. Dies kann durch zerstörungsfreie Namespace-Funktionen erreicht werden:

Der Code lautet wie folgt:

var KUI = KUI || {};
KUI.utils = KUI.utils || {};

KUI.utils.namespace = function(ns){
    var parts = ns.split("."),
        object = KUI,
        i, len;

    if(parts[0] === "KUI"){
        parts = parts.slice(1);
    }

    for(i = 0, len = parts.length; i < len; i+=1){

        if(!object[parts[i]]){
            object[parts[i]] = {};
        }

        object = object[parts[i]];
    }

    return object;
};

Verwendung:

Der Code lautet wie folgt folgt:

KUI.utils.namespace("KUI.common");
KUI.utils.namespace("KUI.common.testing");
KUI.utils.namespace("KUI.modules.function.plugins");
KUI.utils.namespace("format");

Sehen Sie sich an, was die KUI nach dem oben Gesagten hat:

Der Code lautet wie folgt:

{
    "utils": {},
    "common": {
        "testing": {}
    },
    "modules": {
        "function": {
            "plugins": {}
        }
    },
    "format": {}
}

Nachteile des Namespace-Modus

1. Längere Eingaben erfordern eine längere Analysezeit
2. Das heißt, jeder Code kann die globale Instanz ändern und anderer Code erhält die geänderte Instanz.

Das obige ist der detaillierte Inhalt vonBeispiel für einen Javascript-Namespace-Mustercode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn