August 2024
Intermediate to advanced
516 pages
11h 47m
English
Here’s a recursive function that finds the greatest number from an array:
| | function max(array) { |
| | if (array.length === 0) { return null; } |
| | |
| | if (array.length === 1) { return array[0]; } |
| | |
| | if (array[0] > max(array.slice(1))) { |
| | return array[0]; |
| | } else { |
| | return max(array.slice(1)); |
| | } |
| | } |
The essence of each recursive call is the comparison of a single number (array[0]) to the maximum number from the remainder of the array. (To calculate the maximum number from the remainder of the array, we call the very max function we’re in, which is what makes the function recursive.)
We achieve the comparison with a conditional statement. The first half of the conditional statement is as follows:
Read now
Unlock full access