Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.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 在JS中是否有提供公共静态、私有和公共方法以及变量相似性的模式?_Javascript_Static_Design Patterns_Private_Public - Fatal编程技术网

Javascript 在JS中是否有提供公共静态、私有和公共方法以及变量相似性的模式?

Javascript 在JS中是否有提供公共静态、私有和公共方法以及变量相似性的模式?,javascript,static,design-patterns,private,public,Javascript,Static,Design Patterns,Private,Public,我试图克隆JS中一个类的功能,该类具有私有函数、公共函数和静态公共函数。我知道为我的类提供公共和私有方法以及变量的模式,但我不知道在大多数情况下如何向这个模式添加静态方法。有什么线索可以做到这一点 谢谢 编辑: 好的,我知道如何实现静态方法,但是如果我使用这样的模式,我怎么能创建静态方法呢 var module = (function() { return function(selector) { var options = { selector: selector

我试图克隆JS中一个类的功能,该类具有私有函数、公共函数和静态公共函数。我知道为我的类提供公共和私有方法以及变量的模式,但我不知道在大多数情况下如何向这个模式添加静态方法。有什么线索可以做到这一点

谢谢

编辑:

好的,我知道如何实现静态方法,但是如果我使用这样的模式,我怎么能创建静态方法呢

var module = (function() {

return function(selector) {
    var options = {
       selector: selector
    }

    var privateFunction = function() {}
    var publicFunction = function() {}

    return {
       public: publicFunction
    }
}
})();

JavaScript中的静态方法通常通过简单地将函数分配给构造函数函数对象的属性来实现:

function MyClass() {} // Constructor
MyClass.staticMethod = function () {};

阅读Mozilla对OO JavaScript的介绍:可能与