如果我想在满足某个条件时在同一个函数内再次运行我的函数,那么返回该函数VS再次调用该函数之间的区别是什么。
function myFunc(param) {
if (param === "3") {
return myFunc(param);
}
}
VS
function myFunc(param) {
if (param === "3") {
myFunc(param);
}
}
答案 0 :(得分:1)
如果需要返回结果,则需要递归return
内部调用的结果。例如:
function fact(n) {
if (n === 0) return 1;
return n * fact(n - 1);
}
console.log(fact(5));

但是如果递归函数只在函数中完成所需的内容 - 它来自内部的所有副作用 - 那么就不需要{{1} }:
return

答案 1 :(得分:1)
return myFunc()
做了三件事:(1)执行函数myFunc()
,(2)当1结束时,取结果值并将其指定为当前函数的返回值,(3) )终止当前的功能。
仅调用myFunc()
执行(1)。差别就是这样。