首页  >  文章  >  web前端  >  JavaScript如何定义静态方法

JavaScript如何定义静态方法

醉折花枝作酒筹
醉折花枝作酒筹原创
2021-04-12 16:54:233797浏览

在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视频教程

以上是JavaScript如何定义静态方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn