【发布时间】:2021-10-23 12:46:48
【问题描述】:
此方法无法正常工作。哪里出错了?
找出奇数:
array = [1,2,3,4,5,6,7,8,9,10]
function findOddNum(array) {
let result = [];
let i = 0;
function helper_func(inputArray) {
if (inputArray.length === 0) {
return false;
}
if (inputArray[i] % 2 !== 0) {
result = inputArray[i];
}
i++;
helper_func(array);
}
helper_func(array);
return result;
}
const res = findOddNum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
console.log(res);
它返回以下错误:
maximum call stack size not exceeded
【问题讨论】:
-
你有无限递归,因为你无条件地为非空
inputArrays 调用helper_func函数。你期望长度会以某种方式改变吗?你只是在改变i。为什么要使用递归来查找奇数? -
Amaan,您应该使用
English语言来解释您的问题。大多数人不理解Hindi,如果他们不理解你的问题,那么他们肯定无法回答。
标签: javascript dsa