[英]Unexplained undefined value on return
我在下面的代碼中有一個未定義值的問題,我和我的任何同事都無法解釋:
function reverseFactorial(num) {
function reverse(altNum, fac){
console.log(altNum + ', ' + fac);
if ((altNum / fac) === 1)
{
console.log(fac.toString() + '!');
return fac.toString() + '!';
}
else {
reverse(altNum / fac, fac + 1);
}
}
var ret = reverse(num, 1);
console.log(ret);
return ret;
}
輸入示例可以是: reverseFactorial(120)
。
日志將顯示以下內容:
120 1
120,2
60、3
20、4
5、5
5!
未定義
reverse
函數並不總是返回值: else {
case沒有return語句。
您可能打算return reverse(altNum / fac, fac + 1);
在else
塊中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.