この記事の例では、js プライベート スコープで権限を作成する方法を共有します。具体的な内容は次のとおりです。
特権メソッド は、プライベート変数とプライベート関数にアクセスできるパブリック メソッドです:
function MyObject(){ var privateVariable = 10; function privateFunction(){ return false; } this.publicMethod = function(){ privateVariable ++; return privateFunction(); }; } var x = new MyObject(); console.log(x.publicMethod()) ;//false
プライベート変数と関数はプライベート スコープで定義され、次のような特権メソッドも作成できます。
(function(){ var privateValue = 10; function privateFunction(){ return false; } MyObject = function(){}; //没有var 属于全局变量,严格模式下会报错 MyObject.prototype.publicMethod = function(){ privateValue ++; return privateFunction(); }; })(); var instance = new MyObject(); console.log(instance.publicMethod());
ここでは、グローバル コンストラクター関数が実際にはプライベート スコープで定義されていることがわかります。メソッドの 1 つは、プライベート スコープでプライベート変数とプロパティを返すことです。次のように書くと、よりよく理解できます:
Obj = function(){}; (function(){ var x = 10; function y(){ return x + 10; } Obj.prototype.say = function(){ console.log(y()); }; })() var ins = new Obj(); ins.say();
以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。