站长资讯网
最全最丰富的资讯网站

JavaScript如何定义静态方法

在javascript中,直接定义在构造函数上的方法和属性是静态的, 定义在构造函数的原型和实例上的方法和属性是非静态的。静态方法主要用于操作静态属性,可以用“类名.属性=function(){}”进行定义。

JavaScript如何定义静态方法

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

function ClassA(){ //定义构造函数 }; ClassA.func = function(){ //在构造函数上添加一个属性(因为函数也是对象)     console.log("This is a static method"); } var instance = new ClassA(); //新建一个实例 ClassA.func();   //This is a static method instance.func();   //Error:instance.func is not a function

当定义一个函数后通过 “.”为其添加的属性和函数,通过对象本身仍然可以访问得到,但是其实例却访问不到,这样的变量和函数分别被称为静态变量和静态函数。

function Obj(){               }           Obj.a=0; //静态变量            Obj.fn=function(){ //静态函数                      }              console.log(Obj.a); //0  console.log(typeof Obj.fn); //function             var o=new Obj(); console.log(o.a); //undefined console.log(typeof o.fn); //undefined

静态方法不能被实例对象调用,实例方法不能被构造对象调用。

推荐学习:javascript视频教程

赞(0)
分享到: 更多 (0)