r3b
2/12/2014 - 6:04 AM

A nice, simple module container for the browser or Node.

A nice, simple module container for the browser or Node.

//noinspection ThisExpressionReferencesGlobalObjectJS
(function (global) {
    var name = 'MyModule',
        short = '_m',
        _name = global[name],
        _short = (short !== undefined) ? global[short] : undefined;
 
    function Module() {
        /* put code in here */
 
    }
 
    global[name] = Module;
    if (short !== undefined) {
        global[short] = Module;
    }
    global[name].noConflict = function () {
        if (_name) {
            global[name] = _name;
        }
        if (short !== undefined) {
            global[short] = _short;
        }
        return Module;
    };
    if( typeof module !== "undefined" && ('exports' in module)){
        module.exports	= global[name]
    }
    return global[name];
}(this));