23 lines
281 B
JavaScript
23 lines
281 B
JavaScript
|
'use strict';
|
||
|
|
||
|
|
||
|
factorial(5, function (res) {
|
||
|
console.log('res: ' + res);
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
function factorial(n, callback) {
|
||
|
if (n < 0) {
|
||
|
throw 'illegal argument'
|
||
|
}
|
||
|
|
||
|
var result = 1;
|
||
|
while (n > 0) {
|
||
|
result *= n;
|
||
|
n--;
|
||
|
}
|
||
|
|
||
|
callback(result);
|
||
|
}
|