Rumah  >  Artikel  >  hujung hadapan web  >  JavaScript如何定义静态方法

JavaScript如何定义静态方法

醉折花枝作酒筹
醉折花枝作酒筹asal
2021-04-12 16:54:233823semak imbas

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

Atas ialah kandungan terperinci JavaScript如何定义静态方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn