In JavaScript sind direkt im Konstruktor definierte Methoden und Eigenschaften statisch, während im Prototyp und in der Instanz des Konstruktors definierte Methoden und Eigenschaften nicht statisch sind. Statische Methoden werden hauptsächlich zum Betreiben statischer Eigenschaften verwendet und können mit „Klassenname.property=function(){}“ definiert werden.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
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
Wenn eine Funktion definiert ist und die durch „.“ hinzugefügten Attribute und Funktionen weiterhin über das Objekt selbst zugänglich sind, auf seine Instanzen jedoch nicht zugegriffen werden kann, werden solche Variablen und Funktionen als statische Variablen bzw. statische Funktionen bezeichnet.
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
Statische Methoden können nicht von Instanzobjekten aufgerufen werden, und Instanzmethoden können nicht von konstruierten Objekten aufgerufen werden.
Empfohlenes Lernen: Javascript-Video-Tutorial
Das obige ist der detaillierte Inhalt vonSo definieren Sie statische Methoden in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!