Heim  >  Artikel  >  Web-Frontend  >  So definieren Sie statische Methoden in JavaScript

So definieren Sie statische Methoden in JavaScript

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-04-12 16:54:233796Durchsuche

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.

So definieren Sie statische Methoden in JavaScript

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn