ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptカスタムオブジェクトの3種類のメソッドコードの詳細説明
1) JS では、Java と同様に、プライベート メソッド、インスタンス メソッド、クラス メソッドの 3 種類のメソッドをオブジェクトに定義できます。
プライベート メソッドはオブジェクト内でのみ使用できます
インスタンス メソッドは、オブジェクトが作成された後に使用する必要がありますインスタンス化された
クラス メソッドは、クラス名を通じて直接使用できます
注: メソッドの定義は、上記のインデックス メソッドを通じて行うことはできません。
2) プライベート メソッドを定義する
プライベート メソッドはコンストラクター本体内で定義する必要があり、コンストラクター本体内でのみ使用できます。
構文形式: function methodName(arg1,…,argN){ }
例:
function User(name){ this.name=name; function getNameLength(nameStr){ return nameStr.length; } this.nameLength=getNameLength(this.name); }
3) インスタンスメソッドを定義する方法は現在 2 つあります:
プロトタイプメソッド、コンストラクターの外で使用、構文形式:
functionName.prototype.methodName=method;
または
functionName.prototype.methodName=function(arg1,…,argN){};
このメソッドはコンストラクター内で使用され、構文形式:
this .methodName =method;
or
this.methodName=function(arg1,...,argN){};
上記の構文の説明では、method は既存の外部メソッド、methodName はオブジェクトのメソッドです定義することは、オブジェクトのメソッドに外部メソッドを直接割り当てることを意味します。
function(arg1,…,argN){} の形式でオブジェクト メソッドを定義することは、開発者が習得する必要があります。
インスタンス メソッドの定義の例: 例 1
function User(name){ this.name=name; this.getName=getUserName; this.setName=setUserName; } function getUserName(){ return this.name; } Function setUserName(name){ this.name=name; }
インスタンス メソッドの定義の例: 例 2
function User(name){ this.name=name; this.getName=function(){ return this.name; }; this.setName=function(newName){ this.name=newName; }; }
インスタンス メソッドの定義の例: 例 3
function User(name){ this.name=name; } User.prototype.getName=getUserName; User.prototype.setName=setUserName(); function getUserName(){ return this.name; } Function setUserName(name){ this.name=name; }
インスタンス メソッドの定義の例: 例 4
4 ) クラスメソッドを定義する
クラスメソッドはコンストラクターの外部で定義する必要があり、コンストラクター名を通じて直接参照できます。
構文形式:
functionName.methodName=method;
または
functionName.methodName=function(arg1,…,argN){};
例:
function User(name){ this.name=name; } User.getMaxAge=getUserMaxAge; function getUserMaxAge(){ return 200; }
または
User.getMaxAge=function(){return 200;}; alert(User.getMaxAge());
以上がJavaScriptカスタムオブジェクトの3種類のメソッドコードの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。