Heim > Web-Frontend > js-Tutorial > Rekursive Funktion in JS

Rekursive Funktion in JS

高洛峰
Freigeben: 2017-02-08 15:24:43
Original
1580 Leute haben es durchsucht

Wenn in Programmiersprachen die Funktion Func(Type a,...) direkt oder indirekt die Funktion selbst aufruft, wird die Funktion als rekursive Funktion bezeichnet. Rekursive Funktionen können nicht als Inline-Funktionen definiert werden.

Rekursive Funktion:

function factorical(num){
  if(num<=1){
    return 1;
  }
  else{
    return num*factorical(num-1);
  }
}
factorial(2)//2
Nach dem Login kopieren

Diese rekursive Funktion verwendet eine Funktion, um die Funktion selbst aufzurufen, aber ist das wirklich gut? ? , okay, schau hier als nächstes

var another=factorical;
factorical=null;
console.log(another(2))//会报错说 factorical not a function
Nach dem Login kopieren

Das ist der Nachteil des Funktionsaufrufs. Wie man ihn löst, siehe unten

function factorical(num){
  if(num<=1){
    return 1;
  }
  else{
    return num*arguments.callee(num-1);
  }
}
var another=factorical;
factorical=null;
console.log(another(2))//2
Nach dem Login kopieren

Die Verwendung von arguments.callee anstelle des oben genannten Funktionsnamens stellt sicher, dass kein Fehler auftritt, egal wie die Funktion aufgerufen wird.

Das Obige ist die vom Herausgeber eingeführte rekursive Funktion. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht Sie rechtzeitig. Ich möchte mich auch bei Ihnen allen für Ihre Unterstützung der chinesischen PHP-Website bedanken!

Weitere Artikel zu rekursiven Funktionen in JS finden Sie auf der chinesischen PHP-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