ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript の特権メソッドはどのような用途に使用されますか?

JavaScript の特権メソッドはどのような用途に使用されますか?

青灯夜游
青灯夜游オリジナル
2021-04-23 19:35:232261ブラウズ

JavaScript では、特権メソッドとは、ユーザーがプライベート変数を表示および処理するときにパブリック メソッドとしてアクセスできるメソッドを指します。機能: コンストラクター外部のパブリック アクセス (インスタンス化されたオブジェクトに限定)、およびプライベート メンバーおよびメソッドへのアクセスも可能; パブリック メソッドによるプライベート プロパティまたはメソッドへのアクセスは、特権メソッドを通じて制御できます。

JavaScript の特権メソッドはどのような用途に使用されますか?

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

#特権メソッド:

は、ユーザーがプライベート変数を表示および処理するときにパブリック メソッドとしてアクセスできるメソッドを指します。

ポイント:

1. 特権メソッドはメソッドです。

2. 特権メソッドはプライベート変数にアクセスできます

特権メソッドを定義します

コンストラクター内の this キーワードを通じて定義されたメソッドは、インスタンス化されたオブジェクトの継承によって呼び出すことができます。

var Student = function(name) {
var _name = name; //私有属性
//特权方法
this.getName = function() {
return _name;
};
this.setName = function(name) {
_name = name;
};
};
var s1 = new Student('zhangsan');
s1.getName(); //zhangsan

特権メソッドの役割

特権メソッドは、コンストラクターの外部 (インスタンス化されたオブジェクトに限定) でパブリックにアクセスでき、プライベート メンバーやメソッドにもアクセスできます。 , オブジェクトまたはコンストラクターとして使用されるインターフェイスが最適であり、特権メソッドを通じて、パブリック メソッドからプライベート プロパティまたはメソッドへのアクセスを制御できます。 JS フレームワークの拡張には多くのアプリケーションがあります。

特権メソッドとパブリック メソッドの違い

同じ点:

1. どちらもコンストラクターの外部でパブリックにアクセスできます。

2. パブリック プロパティにアクセスできる

違い: 2 点あります

1. 各インスタンスには特権メソッドのコピーが必要です (シングルトンを除く)外部で使用される場合はメモリを考慮する必要があります)、パブリック メソッドはすべてのインスタンスで共有されます

//创建Student对象实例
var s1 = new Student('zhangsan');
var s2 = new Student('lisi');
//两实例的特权方法的引用不相同, 说明在对象实例化的时特权方法被重新创建
console.log(s1.getName === s2.getName); //false

2。特権メソッドはプライベート プロパティおよびメソッドにアクセスできますが、パブリック メソッドはアクセスできません。

//为Student创建公有方法
//公有方法不能访问私有属性
Student.prototype.myMethod = function() {
console.log(_name); //ReferenceError: _name is not defined
};
s1.myMethod();

[推奨学習:

JavaScript 上級チュートリアル]

以上がJavaScript の特権メソッドはどのような用途に使用されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。