In JavaScript beziehen sich privilegierte Methoden auf solche Methoden, die es Benutzern ermöglichen, als öffentliche Methoden darauf zuzugreifen, während sie private Variablen anzeigen und verarbeiten. Funktion: Öffentlicher Zugriff außerhalb des Konstruktors (beschränkt auf instanziierte Objekte) und auch Zugriff auf private Mitglieder und Methoden. Der Zugriff auf private Eigenschaften oder Methoden durch öffentliche Methoden kann über privilegierte Methoden gesteuert werden.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Privilegierte Methoden:
bezieht sich auf Methoden, die es Benutzern ermöglichen, beim Anzeigen und Verarbeiten privater Variablen auf sie zuzugreifen.
Punkte:
1. Eine privilegierte Methode ist eine Methode
2 kann auf private Variablen zugreifen
Definieren Sie privilegierte Methoden
Die über das Schlüsselwort this im Konstruktor definierte Methode kann durch die instanziierte Objektvererbung aufgerufen werden.
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
Die Rolle privilegierter Methoden
Auf privilegierte Methoden kann außerhalb des Konstruktors öffentlich zugegriffen werden (beschränkt auf instanziierte Objekte) und sie können auch auf private Mitglieder und Methoden zugreifen, sodass die als Objekt oder Konstruktor verwendete Schnittstelle am meisten davon abhängt ist perfekt, weil wir durch privilegierte Methoden den Zugriff öffentlicher Methoden auf private Eigenschaften oder Methoden steuern können. Es gibt viele Anwendungen in der Erweiterung des JS-Frameworks.
Der Unterschied zwischen privilegierten Methoden und öffentlichen Methoden
Gleiche Punkte:
1 Auf beide kann außerhalb des Konstruktors öffentlich zugegriffen werden.
2. Auf öffentliche Eigenschaften kann zugegriffen werden
Unterschiede: Es gibt 2 Punkte
1 Jede Instanz muss eine Kopie der privilegierten Methode haben (außer bei Verwendung in einem Singleton muss der Speicher berücksichtigt werden), während öffentliche Methoden gemeinsam genutzt werden für alle Instanzen
//创建Student对象实例 var s1 = new Student('zhangsan'); var s2 = new Student('lisi'); //两实例的特权方法的引用不相同, 说明在对象实例化的时特权方法被重新创建 console.log(s1.getName === s2.getName); //false
2. Privilegierte Methoden können auf private Eigenschaften und Methoden zugreifen, öffentliche Methoden jedoch nicht.
//为Student创建公有方法 //公有方法不能访问私有属性 Student.prototype.myMethod = function() { console.log(_name); //ReferenceError: _name is not defined }; s1.myMethod();
【Empfohlenes Lernen: Javascript-Tutorial für Fortgeschrittene】
Das obige ist der detaillierte Inhalt vonWas nützen privilegierte Javascript-Methoden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!