gpt4 book ai didi

javascript - 函数变量的值在返回后变得未定义

转载 作者:行者123 更新时间:2023-11-28 18:31:42 27 4
gpt4 key购买 nike

我编写了一个函数来查找 9、99、999、9999... 中的数字,其中数字的数字阶乘之和(9!+ 9!表示 99)小于数字本身:

function findLimit(starting_limit){
var starting_limit_string = starting_limit.toString();
var limit_factorial = factorial(9) * starting_limit_string.length;
if(limit_factorial > starting_limit){
var new_starting_limit = (starting_limit * 10) + 9;
findLimit(new_starting_limit);
} else {
return starting_limit;
}
}

var final_limit = findLimit(9);

然而,final_limit 结果是未定义的。尽管事实上,当我在“返回starting_limit”处设置断点时,starting_limit被明确定义为9999999。

那么这是怎么回事?为什么当我的函数返回时,已定义的值会更改为未定义?

最佳答案

您忘记了这一行的return:

findLimit(new_starting_limit);

关于javascript - 函数变量的值在返回后变得未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37864997/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com