不初始化对象的javascript访问类方法

不初始化对象的javascript访问类方法,javascript,Javascript,我有一个类foo,我可以在不初始化fooObj var foo = function(){ this.bar = function(){ console.log("I am bar"); } } 我知道我可以像这样访问bar var fooObj = new foo(); fooObj.bar(); 在其他面向对象的语言中,如jave如果我声明barstatic,我可以使用类名称访问它,如foo.bar没有static概念,如Java,但您可以执行以下操作 var

我有一个类
foo
,我可以在不初始化
fooObj

var foo = function(){
   this.bar = function(){
       console.log("I am bar");
   }
}
我知道我可以像这样访问
bar

var fooObj = new foo();
fooObj.bar();

在其他面向对象的语言中,如
jave
如果我声明
bar
static
,我可以使用类名称访问它,如
foo.bar

没有
static
概念,如
Java
,但您可以执行以下操作

var foo = function(){
   // Constructor specific code
}

foo.bar = function(){
    console.log("I am bar");
}

这就是在JavaScript中定义singleton的方式。

没有像
Java
这样的
静态
概念,但您可以像

var foo = function(){
   // Constructor specific code
}

foo.bar = function(){
    console.log("I am bar");
}

这就是单例在JavaScript中的定义方式

不要用“类”来思考。Javascript没有这些。这些都是具有属性的对象。不要用“类”来思考。Javascript没有这些。这些都是带有属性的对象。如果你把它添加到原型中,当你实例化一个对象并调用其中的方法时,它应该可以工作。@Vigneswaran Marimuthu我没有得到我想要的,deceze说不要用“类”来思考。Javascript没有这些。这些都是带有属性的对象。@ozil他的意思是没有像
Java
中那样的类概念。如果您看到JavaScript,您可以看到函数、对象和属性等概念。构造函数是使用函数而不是JavaScript中的类创建的。虽然ES6有类的概念,但它相对较新——如果你把它添加到原型中,当你实例化一个对象并调用其中存在的方法时,它应该能工作。@Vigneswaran Marimuthu我没有得到我想要的,deceze说不要用“类”来思考。Javascript没有这些。这些都是带有属性的对象。@ozil他的意思是没有像
Java
中那样的类概念。如果您看到JavaScript,您可以看到函数、对象和属性等概念。构造函数是使用函数而不是JavaScript中的类创建的。虽然ES6有类的概念,但它相对较新-