The recursive function in js refers to a function that calls itself in the code. It has three characteristics: the termination condition that occurs when an input error occurs. The basic case is the goal of the recursive function. Recursion is the function implementation. Function
Recursive function refers to a function that calls its own function. Next in the article, I will share with you how to implement recursive functions in js. It has certain reference value and I hope it will be helpful to everyone.
[Recommended tutorial: JavaScript Tutorial]
We can use JavaScript to access functions from Call the function externally or within other functions. Functions can even be called from within. When a function calls itself, it is called a recursive function. For example,
<script> function demo(x) { if (x < 0) return; if (x === 0) return 1; return x * demo(x - 1); } console.log(demo(3)); </script>
the output result is: 6
It can be seen from the above example that in return x * demo(x - 1)
actually calls its own function (demo(x-1))
again, but its parameter is one less than the parameter of the first call. This is the recursive function
The three major characteristics of the recursive function
Termination condition
The termination condition is similar to an emergency brake, It can prevent recursion when input errors are made. In the above case, "if (x < 0) return"
is the termination condition set, so the recursive function will not run when a negative number is entered. .
Basic case
The basic case is the goal of the recursive function. The base case is usually placed in an if statement. In the above case "if (x === 0) return 1;"
is a basic case, because when the value of x decreases to 0 You can successfully confirm the factorial value
Recursion
Recursion is the function implemented. In the above example "return x * demo(x - 1) ;"
is where the recursive function actually occurs. Multiplying the value x returned by the function by demo(x-1)
is the final value we require.
Example:
<script> function revStr(str){ //终止条件 //str === ''是基本案例 if (str === '') return ''; //递归 return revStr(str.substr(1)) + str[0]; } console.log(revStr('cat')); </script>
The output result is: tac
Summary: The above is the entire content of this article, I hope it will be helpful to everyone.
The above is the detailed content of How to implement recursive function in js. For more information, please follow other related articles on the PHP Chinese website!