Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用原型揭示模块模式_Javascript_Design Patterns_Revealing Module Pattern_Revealing Prototype - Fatal编程技术网

Javascript 用原型揭示模块模式

Javascript 用原型揭示模块模式,javascript,design-patterns,revealing-module-pattern,revealing-prototype,Javascript,Design Patterns,Revealing Module Pattern,Revealing Prototype,以下代码可以: var Pill = (function() { var hideCheckPricesPill = function() { $(HB.pillSearchBar.checkPrices).hide(); }; var hideAnyPill = function(pill) { $(pill).hide(); }; var displaySearchBar = function() {

以下代码可以:

var Pill = (function() {

    var hideCheckPricesPill = function() {
        $(HB.pillSearchBar.checkPrices).hide();
    };

    var hideAnyPill = function(pill) {
        $(pill).hide();
    };

    var displaySearchBar = function() {
        $("." + HB.pillSearchBar.hideSearchForm).removeClass(HB.pillSearchBar.hideSearchForm);
    };

    var isEditSearchPill = function(pill) {
        if(pill === HB.pillSearchBar.editSearchText) {
            hideCheckPricesPill();
        }
        else {
            hideAnyPill(pill);
        }
    };

    var isMobileSearch = function(pill) {
        if(!$(pill).hasClass(HB.pillSearchBar.jsOpenMobileSearch)){
            isEditSearchPill(pill);
            displaySearchBar();
        }
    };

    var addEventListenerOnPill = function(pill) {
        $(pill).on('click', 'a',  function() {
            isMobileSearch(pill);
        });
    };

    return {
        addEventListenerOnPill: addEventListenerOnPill
    }

})();

有没有一种方法可以将原型功能添加到一个公共函数中,以便可以使用“new”关键字返回和初始化它

你为什么要这么做?这里看起来不需要实例或原型。我正在重构一个组织不当的大型js项目。在很多情况下,我需要创建实例……一个
Pill
实例有什么用途?