Maison > Article > interface Web > Appeler récursivement la méthode de fonction
Récursion : Appelez-vous à nouveau à l'intérieur d'une fonction
Efficacité : Cet appel n'est pas encore terminé, le prochain appel démarrera ; , et cet appel sera suspendu jusqu'à ce que tous les appels soient terminés avant de revenir dans l'ordre.
Fonction mathématique : factorielle de f(n)
ex : 5!=5*4 (5* 4*! 3*2*1)
4!=4*3 (4*3*2*1)
3!=3*2! (3*2*1)
2!=2*1! 1)
1!=1;
F(n) =n*f(n-1) !
<script> //计算数字n的阶乘 (if方法) function f(n){ if(n==1){ //边界条件 return 1; }else{ //没到边界条件 return n*f(n-1); } } /*或者:return n==1 ? 1 : n*f(n-1); (三目运算方法) function f(n){ var result = return n==1 ? 1 : n*f(n-1); return result; } */ //计算5的阶乘? function testF(){ var result = f(5); console.log(result); } testF(); </script>
Pratique :
La séquence suivante : Séquence de Fibonacci
1,1,2,3,5,8 ,13,21 ,34,55………….
Connu : Le premier nombre et le deuxième nombre de cette séquence sont tous deux 1
De À partir du troisième nombre, chacun le nombre est la somme des deux nombres précédents
Question : Utiliser une fonction pour trouver le nième nombre dans la séquence La valeur d'un nombre
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" style="text/css" href=""> <style> </style> </head> <body> <script> function f(n){ if(n==1 || n==2){ return 1; }else{ return f(n-1)+f(n-2); } } function testF(){ var result=f(20); console.log(result); } testF(); </script> </body> </html>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!