Heim > Web-Frontend > js-Tutorial > Detaillierte Erläuterung der Schritte zum Aufrufen des Caches zur Implementierung der JS-Methode

Detaillierte Erläuterung der Schritte zum Aufrufen des Caches zur Implementierung der JS-Methode

php中世界最好的语言
Freigeben: 2018-05-14 14:28:19
Original
1364 Leute haben es durchsucht

Dieses Mal werde ich Ihnen die Schritte zum Aufrufen des Caches zum Implementieren der JS-Methode ausführlich erläutern. Was sind die Vorsichtsmaßnahmen zum Aufrufen des Caches zum Implementieren der JS-Methode? Schauen Sie mal rein. 1. Was ist

Methodenüberladung?

Methodenüberladung bezieht sich auf die Definition mehrerer Methoden mit demselben Namen in einer Klasse, bei denen jedoch jede Methode unterschiedliche Parameter haben muss Typ oder Anzahl der Parameter.

Kurz gesagt: Methodenüberladung bedeutet wiederholte Methodennamen und unterschiedliche Ladeparameter.


Für Details gehen Sie bitte nach links: Methodenüberladung/Baidu-Enzyklopädie

Wie implementiert js das? ? ?


2. Wie implementiert man js?

Zuallererst verfügt JavaScript nicht über das Konzept der Überladung von Funktionen/Methoden, aber js stellt einen Methodenparameter namens „Argumente“ bereit. Sie können die Länge der Methodenparameter über das Längenattribut dieses Parameters ermitteln Übrigens, was wir heute implementieren, ist nur das Überladen entsprechend der Parameterlänge, nicht dem Parametertyp~~·length. Sobald die Parameterlänge der Methode verfügbar ist, wird beim Herunterladen eine häufigere Methode zum Schreiben von Schaltern angezeigt:

var seven={
  dosomething:function(){
    switch(arguments.length){
      case 0:
        console.log(arguments.length);
        //dosomething
        break;
      case 1:
        console.log(arguments.length);
        //dosomething
        break;
       case 2:
        //dosomething
        console.log(arguments.length);
        break;
    }
  }
}
Nach dem Login kopieren


3. Optimierung

wow~ Wenn es 10 Methoden gibt, werden 10 Zweige benötigt~ und es ist sehr schwierig zu warten~, weil jeder Methodenkörper unter einem steht Fall oder separat geschrieben Eine Funktion~Aber diese sind schlecht~schwer zu warten und nicht hoch genug~Wie sollten wir also die Verarbeitung desselben Methodennamens mit unterschiedlichen Parametern elegant implementieren?

Hier kommt die Apply-Methode zum Einsatz

Schreiben wir eine

Methode für sieben

var seven = {
  addMethod: function (fname, func) {
    var old = this[fname];
    this[fname] = function () {
      if (arguments.length == func.length) {
        return func.apply(this,arguments);
      }
      if (typeof old == 'function') {
        return old.apply(this, arguments);
      }
    }
  }
};
Nach dem Login kopieren

Die modifizierte Sieben ist wie oben und dann der zuvor geschriebene Schalter Sie können es so machen: addMethod

seven.addMethod('dosomething', function (x) {
  console.log(arguments.length);
   //dosomething
});
seven.addMethod('dosomething', function (x,y) {
  console.log(arguments.length);
   //dosomething
});
seven.addMethod('dosomething', function (x,y,z) {
  console.log(arguments.length);
   //dosomething
});
Nach dem Login kopieren
Wenn wir eine Methode hinzufügen möchten, müssen wir nur die Methode addMethod aufrufen. Finden Sie das nicht einfacher und klarer?

Das Prinzip dieses Codes ist eigentlich sehr einfach. Er besteht darin, die alte Methode zwischenzuspeichern und dann Kettenaufrufe entsprechend der Parameterlänge anzuwenden, bis eine Methode mit derselben Länge wie der aktuelle Parameter gefunden und dann aufgerufen wird .


und

verwirren sehr wahrscheinlich die Neulinge, aber das ist nicht der Fall. Die Funktionen der JavaScript-Sprache werden hier geschickt verwendet. Jedes Mal, wenn dieses alte gespeichert wird, handelt es sich um eine Referenz zur vorherigen Methode und es ist jedes Mal ganz neu, und die alte alte behält die Referenz. Schließung~.

funcIch glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website! old

Empfohlene Lektüre:

Detaillierte Erläuterung der Schritte zur Implementierung des Vollbild-Scrolling-Plug-Ins in ES6


vue +vue-router+vuex-Betriebsberechtigungen

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Schritte zum Aufrufen des Caches zur Implementierung der JS-Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage