最近,我们的老师给我们做了一个关于 JavaScript 的测验。我在编程方面比较先进,所以当我遇到一个问题时:
Using the name of a function within that same function will result in an infinite loop?
由于递归,我回答错误。根据我的理解,您必须使用函数的名称才能调用它,因此递归会使这并不总是正确的。
我的理解是否正确,还是措辞不同?
最佳答案
这将导致无限递归“循环”(堆栈溢出):
function callMe() {
callMe();
}
而这不会导致无限循环:
function callMe() {
if (false) {
callMe();
}
}
但是这两个代码片段都有一个“使用”该函数名称的函数(以使用您问题的措辞)。
所以,声明:
Using the name of a function within that same function will result in an infinite loop?
实际上取决于被调用函数内部的逻辑(条件语句等)。
关于javascript - 在同一个函数中使用函数名会导致无限循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35512310/