Как этот шаблон называется в Javascript? у него есть имя?

component .js

var component = (function(){

    var self;

    var default_options = {
        array_option : [],
        string_option : "default"
    };

    return {

        other_function: function(args) {

        },
        init: function(options) {
            self = this;

            // merge in user options 
            for (var attr in options) { 
                if (options.hasOwnProperty(attr)) {
                    self.o[attr] = options[attr];
                }
            }            

            /***
             * Initialize component
             */

            self.other_function(args);
        }
   };

})();

затем в html



Причина, по которой я спрашиваю, заключается в том, что я видел это на примере и думал, что это имеет смысл, но есть ли у них какие-либо чтения о том, почему это хорошая практика? Это объектно-ориентированный Javascript?

если этот IS OO javascript, делает ли этот шаблон бесполезными прототипные определения?

Хороший ответ на вопрос выше

Javascript: шаблон модуля против шаблона конструктора / прототипа?

9
задан Community 23 May 2017 в 11:44
поделиться