JavaScript では、コンストラクターで直接定義されたメソッドとプロパティは静的ですが、コンストラクターのプロトタイプとインスタンスで定義されたメソッドとプロパティは非静的です。静的メソッドは主に静的プロパティを操作するために使用され、「クラス名.property=function(){}」で定義できます。
このチュートリアルの動作環境: Windows 7 システム、JavaScript バージョン 1.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 中国語 Web サイトの他の関連記事を参照してください。