Contoh dalam artikel ini berkongsi kaedah mencipta keistimewaan dalam skop peribadi js untuk rujukan anda Kandungan khusus adalah seperti berikut
Kaedah istimewa ialah kaedah awam yang mempunyai akses kepada pembolehubah peribadi dan fungsi peribadi:
function MyObject(){ var privateVariable = 10; function privateFunction(){ return false; } this.publicMethod = function(){ privateVariable ++; return privateFunction(); }; } var x = new MyObject(); console.log(x.publicMethod()) ;//false
Pembolehubah dan fungsi peribadi ditakrifkan dalam skop peribadi, dan kaedah istimewa juga boleh dibuat, seperti:
(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());
Di sini anda boleh melihat bahawa fungsi pembina global sebenarnya ditakrifkan dalam skop persendirian; salah satu kaedah adalah untuk mengembalikan pembolehubah dan atribut persendirian dalam skop persendirian. Anda boleh memahaminya dengan lebih baik dengan menulisnya seperti ini:
Obj = function(){}; (function(){ var x = 10; function y(){ return x + 10; } Obj.prototype.say = function(){ console.log(y()); }; })() var ins = new Obj(); ins.say();
Di atas adalah keseluruhan kandungan artikel ini, saya harap ia akan membantu kajian semua orang.