fix: Enhance error handling in factorial function (#1430)

This commit is contained in:
YongEaziDev
2023-10-05 11:00:28 +01:00
committed by GitHub
parent 1de5ab7d71
commit 96d122f29e
2 changed files with 18 additions and 11 deletions

View File

@ -9,17 +9,14 @@
*/
const factorial = (n) => {
if (!Number.isInteger(n)) {
throw new RangeError('Not a Whole Number')
}
if (n < 0) {
throw new RangeError('Not a Positive Number')
if (!Number.isInteger(n) || n < 0) {
throw new RangeError('Input should be a non-negative whole number')
}
if (n === 0) {
return 1
}
return n * factorial(n - 1)
}