logo CodeStepByStep logo


Language/Type: JavaScript recursion

Write a recursive function named factorial that accepts an integer n as a parameter and returns the factorial of n, or n!. A factorial of an integer is defined as the product of all integers from 1 through that integer inclusive. For example, the call of factorial(4) should return 1 * 2 * 3 * 4, or 24. The factorial of 0 and 1 are defined to be 1.

If passed a negative value, your function should throw an exception with the message "n must be non-negative" You may assume that the factorial of the value passed can fit in the range of type Number.


  • Do not use loops or auxiliary data structures; solve the problem recursively.

Type your JavaScript solution code here:

This is a function exercise. Write a JavaScript function as described. Do not write a complete program; just the function(s) above.

You must log in before you can solve this problem.

Log In

Need help?

If you do not understand how to solve an exercise or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect tests, etc.), please

Is there a problem? Contact a site administrator.

©, all rights reserved.