Ricerca…


Osservazioni

In Javascript, non esiste la nozione di namespace e sono molto utili per organizzare il codice in varie lingue. Per javascript aiutano a ridurre il numero di globals richiesti dai nostri programmi e allo stesso tempo aiutano a evitare conflitti di denominazione o il prefisso del nome eccessivo. Invece di inquinare l'ambito globale con molte funzioni, oggetti e altre variabili, è possibile creare un oggetto globale (idealmente unico) per l'applicazione o la libreria.

Spazio dei nomi per assegnazione diretta

 //Before: antipattern 3 global variables
    var setActivePage = function () {};
    var getPage = function() {};
    var redirectPage = function() {};

//After:  just 1 global variable, no function collision and more meaningful function names
    var NavigationNs = NavigationNs || {};
    NavigationNs.active = function() {}
    NavigationNs.pagination = function() {}
    NavigationNs.redirection = function() {}

Namespace nidificati

Quando sono coinvolti più moduli, evitare di proliferare nomi globali creando un singolo spazio dei nomi globale. Da lì, eventuali sottomoduli possono essere aggiunti allo spazio dei nomi globale. (Un'ulteriore nidificazione rallenterà le prestazioni e aggiungerà complessità non necessaria.) I nomi più lunghi possono essere utilizzati se le discussioni sui nomi sono un problema:

 var NavigationNs = NavigationNs || {};
     NavigationNs.active =  {};
     NavigationNs.pagination = {};
     NavigationNs.redirection = {};
    
     // The second level start here.
     Navigational.pagination.jquery = function();
     Navigational.pagination.angular = function();
     Navigational.pagination.ember = function();


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow